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
[DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
3 participantes
Página 1 de 1
[DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Quero fazer um sistema de movimento por cliques na tela, e pra isso preciso que os cliques criem objetos que o personagem irá seguir, ou então que o próprio clique seja seguido. Acho que a primeira opção é mais fácil, mais se puderem fazer a segunda melhor ainda. Alguém pode me ajudar?
Acabei de achar um problema... quando eu clico dentro de um objeto sólido, pelo fato dele desviar ele acaba rondando o objeto sem saber o que fazer, como eu faço pra ele simplesmente interromper a trajetória ao chegar do lado do tal objeto?
Editado por CyraxX, evite fazer Posts duplos, alertado.
Acabei de achar um problema... quando eu clico dentro de um objeto sólido, pelo fato dele desviar ele acaba rondando o objeto sem saber o que fazer, como eu faço pra ele simplesmente interromper a trajetória ao chegar do lado do tal objeto?
Editado por CyraxX, evite fazer Posts duplos, alertado.
Última edição por Westerbly em Dom 27 Jun 2010, 18:11, editado 2 vez(es)
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
eu sei o clique que cria o objecto apenas.
vai no create instance e no
x bota
mouse_x
e no y
mouse_y
vai no create instance e no
x bota
mouse_x
e no y
mouse_y
Convidad- Convidado
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
1º: Crie um objeto chamado: obj_Mouse, no step:
então no objeto player coloque no STEP:
- Código:
x=mouse_x y=mouse_y
- Código:
instance_create(x,y,(objeto a ser criado))
então no objeto player coloque no STEP:
- Código:
if instance_exists(obj a ser criado)=1 {mp_potential_step(obj_qualquer.x,obj_qualquer.y,5,solid)}
Thiago_o_programador- Games Ranking :
Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 1
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
É bem simples sem criar objetos.
No evento create do personagem:
segx = x; // x do lugar que será seguido
segy = y; // y do lugar que será seguido
velocidade = 5; // Velocidade com a qual o personagem seguirá o lugar clicado
No evento step:
if (mouse_check_button_pressed(mb_left)) // Se clicou com o botão esquerdo do mouse
{
segx = mouse_x; // Define a posição que o personagem seguirá
segy = mouse_y;
direction = point_direction(x, y, segx, segy); // Define a direção para a posição
}
if (point_distance(x, y, segx, segy) > velocidade) // Só anda para o ponto se a distância for maior que a velocidade
speed = velocidade;
else
speed = 0;
Obs.: Se você quiser que ele desvie de objetos, então tem que usar o mp_potential_step. Aliás, você pode usar o mp_potential_step mesmo se não quiser que ele desvie.
No evento create do personagem:
segy = y; // y do lugar que será seguido
velocidade = 5; // Velocidade com a qual o personagem seguirá o lugar clicado
No evento step:
{
segx = mouse_x; // Define a posição que o personagem seguirá
segy = mouse_y;
direction = point_direction(x, y, segx, segy); // Define a direção para a posição
}
if (point_distance(x, y, segx, segy) > velocidade) // Só anda para o ponto se a distância for maior que a velocidade
speed = velocidade;
else
speed = 0;
Obs.: Se você quiser que ele desvie de objetos, então tem que usar o mp_potential_step. Aliás, você pode usar o mp_potential_step mesmo se não quiser que ele desvie.
- Spoiler:
- No evento create do personagem:
segx = x; // x do lugar que será seguido
segy = y; // y do lugar que será seguido
No evento step:if (mouse_check_button_pressed(mb_left)) // Se clicou com o botão esquerdo do mouse
{
segx = mouse_x; // Define a posição que o personagem seguirá
segy = mouse_y;
}
mp_potential_step(segx, segy, 5 /*essa é a velocidade*/, false /*desviar apenas de sólidos*/)
Igor KinGamer- Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
E pra ele usar um gráfico diferente pra cada direção dependendo do lugar onde eu clico?
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
grafico? Que grafico? Ta falando de sprites? o q?
Thiago_o_programador- Games Ranking :
Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 1
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Isso, sprites. Tipo, num exemplo do GMaker tem um gráfico pra cada direção do personagem, quero fazer assim, só que como não se trata de um movimento e sim de uma 'perseguição', não sei como fazer, porque a direção vai depender de onde eu clicar.
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Westerbly escreveu:E pra ele usar um gráfico diferente pra cada direção dependendo do lugar onde eu clico?
Se é top view (visto de cima), usa image_angle. Você tem que ter o sprite do personagem virado para a direita. Então, no step, coloca:
A origem do sprite deve estar centralizada ("origem" é o ponto pelo qual o sprite é "segurado"). Na janela das propriedades do sprite há um botão escrito "Center". É só clicar nele.).
Última edição por Igor KinGamer em Dom 27 Jun 2010, 16:52, editado 1 vez(es)
Igor KinGamer- Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
image_angle=point_direction(x,y,mouse_x,mouse_y )
Thiago_o_programador- Games Ranking :
Notas recebidas : D - C - D - C
Data de inscrição : 14/05/2009
Reputação : 7
Número de Mensagens : 713
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 1
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Mas aí ele vai usar alguma subimagem ou só vai girar o sprite pra tal ângulo?
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Só vai girar o sprite.
PS.: Só funciona no GM Pro.
PS.: Só funciona no GM Pro.
Igor KinGamer- Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Ah, eu só tenho o Lite. Não tem um jeito de usar outro sprite de acordo com o ângulo do clique?
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Tem um outro jeito, que gasta uma considerável quantidade de espaço a mais, mas isso é melhor do que nada.
Na janela de propriedades do sprite, clique em "Edit Sprite". Na nova janela, vá no menu "Animation" > "Rotation Sequence" > "Counter-Clockwise".
Em number of frames, você coloca a quantidade de subimages que serão criadas. Quanto maior o número, melhor será a rotação, porém ficará mais pesado.
72 subimages devem ser (mais do que) o suficiente. Até 36 devem dar. O problema é quando precisa aparecer o objeto girando. Mas, no seu caso, ele apenas irá numa direção, sem alterá-la pelo caminho, então nem vai dar para perceber que a direção não está muito certa.
Em Degrees, coloque 360.
Então, no evento step, coloque:
image_index = direction/(360/quantidade_de_subimages);
Não esqueça de colocar o valor certo em "quantidade_de_subimages" e, mesmo fazendo desse jeito, centralize o sprite.
Na janela de propriedades do sprite, clique em "Edit Sprite". Na nova janela, vá no menu "Animation" > "Rotation Sequence" > "Counter-Clockwise".
Em number of frames, você coloca a quantidade de subimages que serão criadas. Quanto maior o número, melhor será a rotação, porém ficará mais pesado.
72 subimages devem ser (mais do que) o suficiente. Até 36 devem dar. O problema é quando precisa aparecer o objeto girando. Mas, no seu caso, ele apenas irá numa direção, sem alterá-la pelo caminho, então nem vai dar para perceber que a direção não está muito certa.
Em Degrees, coloque 360.
Então, no evento step, coloque:
Não esqueça de colocar o valor certo em "quantidade_de_subimages" e, mesmo fazendo desse jeito, centralize o sprite.
Igor KinGamer- Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
É para funcionar.
PS.: Em vez de:
image_index = direction/(360/quantidade_de_subimages);
Coloque:
image_index = round(direction/(360/quantidade_de_subimages));
PS.: Em vez de:
Coloque:
Igor KinGamer- Data de inscrição : 26/09/2008
Reputação : 11
Número de Mensagens : 890
Prêmios :
x 0 x 1 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: [DÚVIDA NOVAMENTE] Clique do Mouse criar objeto
Eu já tinha as subimages de todas as direções, foi só uma questão de reordenar a animação, mas mesmo assim a dica da rotação também foi útil. Ficou perfeito, brigadão ae!
Tópicos semelhantes
» movimentar objeto para cima com o clique do mouse
» [Dúvida/Ajuda] Personagem andar com um clique do mouse
» [Resolvido][DUVIDA]Criar objeto com criador
» Clicar com o mouse e criar um objeto ali!
» [Resolvido]Arrastar mouse é criar objeto.
» [Dúvida/Ajuda] Personagem andar com um clique do mouse
» [Resolvido][DUVIDA]Criar objeto com criador
» Clicar com o mouse e criar um objeto ali!
» [Resolvido]Arrastar mouse é criar objeto.
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos