Como faço para o meu personagem atirar?

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

Como faço para o meu personagem atirar?

Mensagem por Viper7 em Sab 26 Dez 2009, 23:33

Pessoal, utilizando o sistema de busca do fórum eu encontrei em um tópico (Clique aqui para ver o tópico) a seguinte explicação do usuário Del: "no obj tiro, você coloca seleciona o evento create e cria um movimento para a direita na velocidade desejada, já no evento space do seu personagem principal, procura pelo Create Moving Instance e seleciona o obj tiro."

Problemas encontrados:
1) O tiro aparece somente no alto da tela.
2) Se eu segurar o botão de tiro, o personagem fica atirando sem parar.
O que eu quero:
1) Que o tiro saia do personagem.
2) Que ao apertar o botão de tiro, o personagem atire e espere um pequeno tempo para atirar.
Abraços!!!
--------------------------------------------------------------------------------
EDIT:
Pesquisando mais, eu achei o seguinte tópico (Clique aqui para visualizar) e encontrei uma excelente explicação do usuário wac2007, e baseando-se nessa explicação eu já consegui fazer o tiro sair do meu personagem, como também consegui controlar a velocidade do tiro.
único problema que persiste:
O meu personagem é grande, então o tiro está saindo de dentro dele, e eu gostaria que estivesse saindo um pouco na frente. Creio eu que seja algo relacionado com direções X e Y.

Viper7

Número de Mensagens : 82
Data de inscrição : 20/11/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://mascotegames.blogspot.com

Voltar ao Topo Ir em baixo

Re: Como faço para o meu personagem atirar?

Mensagem por itallo em Dom 27 Dez 2009, 01:35

no comando, instance_create(xx+xto,yy,obj)

xx vc coloca onde fica a arma e yy a altura....
mas vc pode seguir o seguinte raciocinio:

se estiver virado para a direita
{
xto = 30
}

se estiver virado para a esquerda
{
xto = -30
}

assim a posição de x vai variar de acordo com a direção do personagem.

qualquer coisa soh perguntar....

vou postar um jogo que eu fiz.

itallo

Ranking : Sem avaliações
Número de Mensagens : 969
Idade : 24
Data de inscrição : 26/08/2009
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.zuluhotel.com.br

Voltar ao Topo Ir em baixo

Re: Como faço para o meu personagem atirar?

Mensagem por Viper7 em Dom 27 Dez 2009, 11:28

Olá oBKo, eu entendi o seu raciocínio, porém ainda não entendi como executá-lo. Eu estou fazendo o seguinte:

Criei um objeto herói e um objeto tiro, então no objeto herói eu fiz isso:
Add event > Create > Execute a piece code (pode_atirar = true)
Add event > Alarm0 > Execute a piece code (pode_atirar = true)
Add event > Keyboard (space) > Execute a piece code:
if pode_atirar = true
{
sound_play(snd_tiro);
instance_create(x,y,tiro)
pode_atirar = false
alarm[0] = (20)
}

Após fazer isso o tiro está saindo do herói quando eu aperto a barra de espaço, porém ele está saindo de dentro do herói e eu quero que ele sai da frente do herói.

Obrigado pela atenção,
abraços!

Viper7

Número de Mensagens : 82
Data de inscrição : 20/11/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://mascotegames.blogspot.com

Voltar ao Topo Ir em baixo

Re: Como faço para o meu personagem atirar?

Mensagem por itallo em Dom 27 Dez 2009, 12:22

então:
vc vai ter que ir chutando para saber a posição da arma em relação ao X padrão que vc colocou lá na sprite do heroi.

event create:
//aqui vai configurar as ações no evento step.
yto = 40

xtt = 40



event step:
tenta por o seguinte:
se faz o seguinte:
if keyboard_check_pressed(vk_right){direita = true}

if keyboard_check_pressed(vk_left){direita = false}

if direita = true{xto = xtt}
if direita = false{xto = -xtt}

o que eu fiz?
bom eu fiz que quando você mudar para uma direção ele vai por o xto com um valor para aquela direção, assim se vc estiver virado para a direita ele vai sair a 40 pixels a frente do personagem, e se estiver virado para a esquerda ele vai sair a 40 pixels antes do personagem.

// no evento abaixo, o tiro será criado na posição do player mais o valor da direção
instance_create(obj_player.x+xto,obj_player.y-yto,tiro)

itallo

Ranking : Sem avaliações
Número de Mensagens : 969
Idade : 24
Data de inscrição : 26/08/2009
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.zuluhotel.com.br

Voltar ao Topo Ir em baixo

Re: Como faço para o meu personagem atirar?

Mensagem por Viper7 em Dom 27 Dez 2009, 12:54

oBKo escreveu:
// no evento abaixo, o tiro será criado na posição do player mais o valor da direção
instance_create(obj_player.x+xto,obj_player.y-yto,tiro)

Amigo, onde eu coloco este evento?

Viper7

Número de Mensagens : 82
Data de inscrição : 20/11/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://mascotegames.blogspot.com

Voltar ao Topo Ir em baixo

Re: Como faço para o meu personagem atirar?

Mensagem por itallo em Dom 27 Dez 2009, 13:03

//evento create add:
patir = true

//evento step:
if keuboard_check_pressed(vk_space) and patir = true
{
patir = false
instance_create(obj_player.x+xto,obj_player.y-yto,tiro)
alarm[0] = 20
}

//evento alarm
alarm[0] :
patir = true


adiciona isso Very Happy

itallo

Ranking : Sem avaliações
Número de Mensagens : 969
Idade : 24
Data de inscrição : 26/08/2009
Reputação : 12
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   :
   :

http://www.zuluhotel.com.br

Voltar ao Topo Ir em baixo

Re: Como faço para o meu personagem atirar?

Mensagem por Viper7 em Dom 27 Dez 2009, 13:43

oBKo escreveu://evento create add:
patir = true

//evento step:
if keuboard_check_pressed(vk_space) and patir = true
{
patir = false
instance_create(obj_player.x+xto,obj_player.y-yto,tiro)
alarm[0] = 20
}

//evento alarm
alarm[0] :
patir = true


adiciona isso Very Happy

CONSEGUI!!!! cheers
Obrigado amigo, seu nome irá ficar nos créditos do meu jogo ao lado daqueles que me ajudaram.
Outro método que eu tentei aqui e funcionou é o seguinte:
No evento que eu citei anteriormente, na parte "instance_create(x,y,tiro)" onde está escrito "x" você pode adicionar + e um valor qualquer (EX:x+35), mesma coisa com o Y, assim você vai colocando o tiro onde quer no personagem.

Obrigado pela ajuda, amigão!!!

Viper7

Número de Mensagens : 82
Data de inscrição : 20/11/2009
Reputação : 0
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

http://mascotegames.blogspot.com

Voltar ao Topo Ir em baixo

Re: Como faço para o meu personagem atirar?

Mensagem por Conteúdo patrocinado Hoje à(s) 21:54


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