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
[Resolvido]Como distribuir variáveis pela room?
3 participantes
Página 1 de 1
[Resolvido]Como distribuir variáveis pela room?
Depois de ver que o sistema de partículas do GM:S não pode mais fazer nenhum tipo de processamento, eu comecei a fazer um pseudo sistema de partículas próprio. Ele segue a seguinte lógica: Um objeto vai desenhar Centenas de sprites. Simples, não? E é. O problema é para distribuir os valores X e Y pela view.
Vamos ao código que eu estou utilizando:
Este é o código de criação de partículas. Como vocês podem ver, eu utilizo uma Array (E depois eu desenho esta array). Ela possui valores pré-definidos, que são:
IDD - Identificação de cada partícula.
xx e yy - Posicionamento da partícula com o valor indicado.
vel - Velocidade da partícula com o valor indicado.
dir - Direção da partícula com o valor indicado.
desenha - Booleano que determina se pode ou não ser desenhado
Argument0 - Determina o número de partículas a serem criadas
Tudo funciona perfeitamente bem. O problema é exatamente neste código, mais precisamente na hora de criar estas partículas onde, mesmo usando o randomize(), os valores aleatórios que são retornados não são muito bem distribuídos na view (Utilizo Draw_gui e o xx e yy são valores que vão de "0" até "view_hview" e "view_wview").
Aí é que vem o meu problema:
Como distribuir os valors XX e YY de maneira homegênia pela view (Ou seja, com que as partículas fiquem por toda a room) ou como criar valores aleatórios reais para a forma como estou criando as "partículas"?
Lembrando que meu problema é apenas para criar as partículas em posições bem distribuídas e não para fazer movimentação, desenho, etc.[b]
Vamos ao código que eu estou utilizando:
- Spoiler:
xx = 0;
yy = 1;
vel = 2;
dir = 3;
desenha = 4;
idd = 0;
repeat(argument0){
idd += 1;
randomize()
pt[idd,xx] = irandom(view_wview);
randomize()
pt[idd,yy] = irandom(view_hview);
pt[idd,vel] = 0;
pt[idd,dir] = 0;
pt[idd,desenha] = true;
}
part_num = idd;
Este é o código de criação de partículas. Como vocês podem ver, eu utilizo uma Array (E depois eu desenho esta array). Ela possui valores pré-definidos, que são:
IDD - Identificação de cada partícula.
xx e yy - Posicionamento da partícula com o valor indicado.
vel - Velocidade da partícula com o valor indicado.
dir - Direção da partícula com o valor indicado.
desenha - Booleano que determina se pode ou não ser desenhado
Argument0 - Determina o número de partículas a serem criadas
Tudo funciona perfeitamente bem. O problema é exatamente neste código, mais precisamente na hora de criar estas partículas onde, mesmo usando o randomize(), os valores aleatórios que são retornados não são muito bem distribuídos na view (Utilizo Draw_gui e o xx e yy são valores que vão de "0" até "view_hview" e "view_wview").
Aí é que vem o meu problema:
Como distribuir os valors XX e YY de maneira homegênia pela view (Ou seja, com que as partículas fiquem por toda a room) ou como criar valores aleatórios reais para a forma como estou criando as "partículas"?
Lembrando que meu problema é apenas para criar as partículas em posições bem distribuídas e não para fazer movimentação, desenho, etc.[b]
Última edição por Thomaz em Ter 08 Jan 2013, 15:04, editado 1 vez(es)
Re: [Resolvido]Como distribuir variáveis pela room?
- Código:
xx = 0;
yy = 1;
vel = 2;
dir = 3;
desenha = 4;
idd = 0;
for(xxx = 32; xxx < view_wview; xxx += 32)
for(yyy = 32; yyy < view_hview;yyy += 32)
{
idd += 1;
randomize()
pt[idd,xx] = xxx + 16 - irandom(32);
randomize()
pt[idd,yy] = yyy + 16 - irandom(32);
pt[idd,vel] = 0;
pt[idd,dir] = 0;
pt[idd,desenha] = true;
}
part_num = idd;
Editado por Thopson1m: Eu sei que sua intensão foi ajudar, mas, ao menos, formate melhor essa sua mensagem, pois nem todos já sabem todos os códigos do Game Maker de có. Grato pela atenção.
ok, formatei, obrigado
diego333- Data de inscrição : 06/10/2010
Reputação : 3
Número de Mensagens : 84
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Como distribuir variáveis pela room?
Nossa, cara! Eu acho que consegui entender todo o código. Vou adaptar e mais tarde digo a você se funcionou ou não. MUITO OBRIGADO!
Edit: Só para ter certeza, você meio que dividiu a view em quadrantes de tamanho 32 e colocou um número aleatório só que DENTRO destes quadrantes, certo?
EDIT2: Feito, funcionando. OBRIGADO, Diego!
Edit: Só para ter certeza, você meio que dividiu a view em quadrantes de tamanho 32 e colocou um número aleatório só que DENTRO destes quadrantes, certo?
EDIT2: Feito, funcionando. OBRIGADO, Diego!
Re: [Resolvido]Como distribuir variáveis pela room?
Thomaz escreveu:Nossa, cara! Eu acho que consegui entender todo o código. Vou adaptar e mais tarde digo a você se funcionou ou não. MUITO OBRIGADO!
Edit: Só para ter certeza, você meio que dividiu a view em quadrantes de tamanho 32 e colocou um número aleatório só que DENTRO destes quadrantes, certo?
EDIT2: Feito, funcionando. OBRIGADO, Diego!
sim, porém ele pode sair 16 pixels do quadrado, pra qualquer lado xD
diego333- Data de inscrição : 06/10/2010
Reputação : 3
Número de Mensagens : 84
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [Resolvido]Como distribuir variáveis pela room?
Tópico trancado, pois a dúvida do autor foi resolvida.
Caso necessites, favor se dirigir à mim ou à qualquer outro moderador para destrancar este seu tópico.
Caso necessites, favor se dirigir à mim ou à qualquer outro moderador para destrancar este seu tópico.
Machow8- Data de inscrição : 21/05/2011
Reputação : 16
Número de Mensagens : 625
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» Como fazer o texto no draw_gui seguir o player pela room?
» como criar um contador (com sprite)de pontos que siga o player pela room?
» COMO TROCAR DE ROOM SEM PERDER VALORES DAS VARIÁVEIS?
» [Resolvido]Como subtrair uma variavel pela outra??
» { Resolvido }Como fazer para que o player morra quando cair embaixo da room mais parar no lado e em cima da room !?
» como criar um contador (com sprite)de pontos que siga o player pela room?
» COMO TROCAR DE ROOM SEM PERDER VALORES DAS VARIÁVEIS?
» [Resolvido]Como subtrair uma variavel pela outra??
» { Resolvido }Como fazer para que o player morra quando cair embaixo da room mais parar no lado e em cima da room !?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos