Conectar-se
Quem está conectado
29 usuários online :: 3 usuários cadastrados, Nenhum Invisível e 26 Visitantes

CRP-Max, Katerp, Willy

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
Data de inscrição : 13/11/2010
Número de Mensagens : 237
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : -1
Ver perfil do usuário

Ajuda com jogo de Arco??

em Seg 26 Set 2011, 13:56
Olá , eu estou tentando ffazer um jogo de aventura "topdown" é um pouco top down só , e eu quero fazer um tiro de arco e flecha com o mouse , tá tudo certo , porem quando a flecha sair como eu vou fazer trocar a sprite, ou até rodar com o draw_sprite_ext?? como eu faço , meu player ta assim :
STEP:
Código:
if mouse_check_button(mb_left)then instance_create(x,y,obj_arrow)

e tem a movimentação do personagem,mais isso nao vem ao caso...e na flecha ocmo eu faço para ela girar para o lado que eu cliquei ?? valeuuu!!
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 14:07
A função que você procura é point_direction. Ela te retorna um ângulo que você pode usar como argumento pro draw_sprite_ext.
Talvez você não conheça, também, as variáveis "mouse_x" e "mouse_y". Elas equivalem às coordenadas (x, y) do mouse.

Lembre-se que, se você não atualizar o image_angle, não importa como você a desenhe, as colisões da flecha considerarão o ângulo zero. Lembre-se, também, que "zero" corresponde a apontar pra direita (eu, pelo menos, tenho o péssimo hábito de fazer desenhos apontando pra cima).
Data de inscrição : 13/11/2010
Número de Mensagens : 237
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : -1
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 14:15
certo , eu conheço até as funções mais , não entendi muito bem como usa , porem tentarei conseguir sozinho , muito obrigado
------------------ oque seria xscale e yscale?--------------------------
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 14:21
pra usar o point_direction, você precisa de 2 pontos, a origem e o destino (nessa ordem). A origem pode ser player.x e player.y e a origem, mouse_x e mouse_y.

O resto me parece bem simples. Se você não conseguir, me mostre seus códigos da flecha pra eu poder comentar.
Data de inscrição : 13/11/2010
Número de Mensagens : 237
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : -1
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 14:26
Certo , agora completamente compreendido só uma perguntinha oque é xscale e yscale?? obrigado!
avatar
Data de inscrição : 13/10/2010
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 14:36
Um exemplo de como fazer:

OBS.: Para usar do seguinte jeito, você precisa da versão registrada, Pro, do Game Maker.

No Mouse Click event que cria o obj_flecha:
Código:
image_angle = point_direction(x, y, mouse_x, mouse_y); // aqui definimos a direcao
//baseada onde foi clicado
direcao = image_angle
instance_create(x,y,obj_flecha)
No Create do obj_flecha:
Código:
direction=obj_player.direcao //aqui colocamos a direcao do movimento da flecha, que //será a que capturamos na hora do clique.
speed=velocidade // coloque aqui sua velocidade
No Draw do obj_flecha.
Código:
draw_sprite_ext(spr_flecha,0,x,y,image_xscale,image_yscale,image_angle,image_blend,image_alpha) //aqui desenhamos a imagem apontada para a direcao do clique.

E o x/y_scale é a escala para transformar a imagem, para não mexer nessa parte coloque image_xscale e image_yscale.

Use essa imagem para se orientar quanto aos ângulos no Game Maker:
Data de inscrição : 13/11/2010
Número de Mensagens : 237
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : -1
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 18:50
Aah , muito obrigado , estou realmente grato , porem eu achei um erro no seu codigo , quando gira a flecha gira o meu personagem tambem , isso ficou estranho!! Como eu arrumo?

RESOLVI!!
avatar
Data de inscrição : 13/10/2010
Número de Mensagens : 149
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 1

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 19:15
Código corrigido:
No Mouse Click event que cria o obj_flecha:
Código:
direcao  = point_direction(x, y, mouse_x, mouse_y); // aqui definimos a direcao
//baseada onde foi clicado
instance_create(x,y,obj_flecha)
No Create do obj_flecha:
Código:
direction=obj_player.direcao //aqui colocamos a direcao do movimento da flecha, que //será a que capturamos na hora do clique.
speed=velocidade // coloque aqui sua velocidade
No Draw do obj_flecha.
Código:
draw_sprite_ext(spr_flecha,0,x,y,image_xscale,image_yscale,image_angle,image_blend,image_alpha) //aqui desenhamos a imagem apontada para a direcao do clique. PS: para dar //certo a imagem original precisa ser na direcao 0°, para a direita.
Data de inscrição : 13/11/2010
Número de Mensagens : 237
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : -1
Ver perfil do usuário

Re: Ajuda com jogo de Arco??

em Seg 26 Set 2011, 19:15
ja resolvi hehe obrigado!!
Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum