Posição X e Y

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Posição X e Y

Mensagem por Isquilo_Roedor em Ter 24 Jun 2014, 14:38

Uma coisa que me estressa é ter que por exemplo ir chutando a posição X e Y para posicionar um objeto atraves de um código,eu queria saber se tem como medir a posição X e Y para não ter que ficar adivinhando através dos códigos,um exemplo é no código da minha arma,por exemplo if keyboard_check(vk_space) = true
instance_create (obj_bala,x+10,y+5)
o codigo acho que nao esta correto é so exemplo
porém eu vou fazendo no chute até a bala sair da melhor posição possivel da arma
tem algum jeito de calcular a posição antes de adicionar ali tipo medir?

Isquilo_Roedor

Ranking : Nota D
Número de Mensagens : 334
Idade : 16
Data de inscrição : 22/03/2012
Notas recebidas : E-E-D
Reputação : 18
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Posição X e Y

Mensagem por Witen em Ter 24 Jun 2014, 14:51

Olhe no sprite que você usa como arma, e pegue a posição que você quer que o tiro saia(seja criado)
Código:
instance_create(obj_bala,x+Posição_x,y+Posição_y)
Mas se você esta criando um jogo em que o angulo da arma muda de acordo com a posição do mouse, por exemplo ddtank ou um jogo de tiro top view, você terar que usar a função lengthdir que transforma uma posição do plano cartesiano em cordeada polar(aquela com a direção e o raio), assim o codigo ficaria:
Código:
instance_create(obj_bala,x+lengthdir_x(1,Angulo_do_tiro),y+lengthdir_y(1,Angulo_do_tiro))

Witen

Ranking : Sem avaliações
Número de Mensagens : 515
Idade : 17
Data de inscrição : 23/05/2012
Reputação : 36
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

http://www.wibix.webs.com

Voltar ao Topo Ir em baixo

Re: Posição X e Y

Mensagem por chicoweb em Ter 24 Jun 2014, 15:51

Eu entendi o que vc quiz dizer, também sofria com isso.
A solução que achei reduz bastante a quantidade de chutes da posição.

Vou tentar explicar na teoria to sem tempo:

Exemplo vc tem dois objetos com os sprites: spr_player, spr_arma
Quer posicionar a arma cujo gatilho fique no dedo do player exatamente.

1 - Abre o spr_player pelo editor de sprite do gm mesmo.

2 - Aponte o mouse ali no dedo do player, vai aparecer na barra de status do editor as coordenadas do mouse, ou seja do dedo, dentro do sprite do player, se vc não vir essa barra, maximize o editor que aparecerá.

3 - Ai vc anota essas coordenadas, exemplo 42,48;

4 - Abre o sprite da arma e faça o mesmo aponte o mouse para o gatilho da arma, e pegue as coords, exemplo: 12,16;

5 - Pronto com esses dados fica mole:

Código:
xx = obj_player.x + 42 - 12
yy = obj_player.y + 48 - 16
instance_create(obj_arma,xx,yy)

6 - EDIT: Esqueci de avisar, isso ai em cima serve para os sprites que tem os pontos de origem (Origin) x e y no ponto zero, se o seu sprite tiver outro origin, por exemplo: 8,4, ai tem que colocar assim:

Código:
xx = obj_player.x + 42 - 12 - 8
yy = obj_player.y + 48 - 16 - 4
instance_create(obj_arma,xx,yy)
1

Faça script e armazena os valores em variaveis, melhore essa rotina minha ai que citei, pois foi só uma teoria.

chicoweb

Ranking : Nota C
Número de Mensagens : 666
Idade : 39
Data de inscrição : 15/05/2012
Notas recebidas : B+C
Reputação : 49
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Posição X e Y

Mensagem por 7hiagomp em Ter 24 Jun 2014, 16:32

Eu uso o debugger antigo e coloco pra mostrar a posição do mouse, ai coloco o mouse onde quero e vejo o x e y do mouse.  Ai vou lá no codigo e coloco os valores certos.

as vezes precisa dar um tapinha pra mais ou pra menos.  Mas é um bom atalho.  ahaha.

O melhor jeito de vc fazer isso é você não colocar valores absolutos, tipo, se for uma arma usa Draw invés de step e coloca sempre a posição em relação posição do player. A arma fica an posição x e y do player + 20 pixels. Assim é bem mais facil de fazer o layout.

7hiagomp

Número de Mensagens : 124
Idade : 31
Data de inscrição : 21/04/2014
Reputação : 24
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Posição X e Y

Mensagem por Conteúdo patrocinado Hoje à(s) 20:47


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum