Como fazer o player atirar para o lado que ele está virado?

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

Como fazer o player atirar para o lado que ele está virado?

Mensagem por Nicolas em Sex 20 Maio 2011, 16:23

Bem ja tentei procurar,nenhuma engine disponivel na area de aprendizado tambem ja tentei fazer com tutorias que aprendi e desenvolver mais ele nao cria,agora quero saber,como eu faço isso alguen ai tem uma engine pra min?
Por favor me ajudem.


Última edição por Nicolas em Sex 20 Maio 2011, 17:45, editado 1 vez(es)

Nicolas

Número de Mensagens : 492
Idade : 17
Data de inscrição : 23/02/2010
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por fredcobain em Sex 20 Maio 2011, 16:35

Se for algo tipo plataforma, faz assim:

Código:

instance_create(enemy.x,enemy.y,tiro);

if (enemy.x > player.x)
{
tiro.hspeed=-3;
}

else

{
tiro.hspeed=3;
}



Agora se for uma visao top down, tipo rpg, o segredo é fazer assim:

Código:

instance_create(enemy.x,enemy.y,tiro)
tiro.speed=3;
tiro.direction=point_direction(enemy.x,enemy.y,player.x,player.y);


Acredito eu que as duas últimas linhas desse último código podem até ser substituidas pela função motion_add(dir,speed)
nesse caso o último código tbm poderia ser:
Código:

instance_create(enemy.x,enemy.y,tiro);
motion_add(3,point_direction(enemy.x,enemy.y,player.x,player.y));

embora nunca tenha testado essa função motion_add();


Última edição por fredcobain em Sex 20 Maio 2011, 16:43, editado 2 vez(es)

fredcobain

Ranking : Sem avaliações
Número de Mensagens : 691
Idade : 35
Data de inscrição : 14/04/2011
Reputação : 162
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por Carlos L. em Sex 20 Maio 2011, 16:35

De uma lida nas aulas do RedDragon, lá ele ensina como fazer o ataque.
Código:
http://gmbr.forumeiros.com/t3425-aulas-de-game-maker-para-iniciantes-por-reddragon
flw

Carlos L.

Ranking : Nota C
Número de Mensagens : 270
Data de inscrição : 26/09/2010
Notas recebidas : C
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por Nicolas em Sex 20 Maio 2011, 17:45

A gente é algo do tipo plataforma,fredcobain não deu certo pois ainda nao possuo inimigo,vou ate tentar com qualquer objeto,mais tem com ser sem inimigo?

Alguen tambem pode psotar como colocar movimento no tiro?

Nicolas

Número de Mensagens : 492
Idade : 17
Data de inscrição : 23/02/2010
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por kelvindeth em Sex 20 Maio 2011, 17:46

Cria uma variável para checar o lado que está virado.

Ex:
globalvar direita;
global.direita = true // Se seu personagem começar virado para a direita

Depois é so trabalhar em cima da var.

cria uma linha +- assim:

// Atacando para a direita:
Código:
if global.direita = true and keyboard_check_pressed(ord("A"))
{
  sprite_index = "Sprite dele atacando para a direita"
}

// Atacando para a esquerda:
Código:
if global.direita = false and keyboard_check_pressed(ord("A"))
{
  sprite_index = "Sprite dele atacando para a esquerda"
}



Qualquer coisa so perguntar, espero que tenha entendido.... Flw...

kelvindeth

Número de Mensagens : 135
Idade : 24
Data de inscrição : 14/05/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por Nicolas em Sex 20 Maio 2011, 18:07

Teria como substituir esse sprite intex para criar um objeto?

E como colocar velocidade no tiro,pra direção certa?

Nicolas

Número de Mensagens : 492
Idade : 17
Data de inscrição : 23/02/2010
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por Carlos L. em Sex 20 Maio 2011, 18:27

Ta ai uma engine de como atirar.
Código:
http://dl.dropbox.com/u/29135492/Player_Tiro.gmk
flw

Carlos L.

Ranking : Nota C
Número de Mensagens : 270
Data de inscrição : 26/09/2010
Notas recebidas : C
Reputação : 8
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por kelvindeth em Sex 20 Maio 2011, 19:30

Nicolas escreveu:Teria como substituir esse sprite intex para criar um objeto?

E como colocar velocidade no tiro,pra direção certa?

Tem sim... Ao invez do comando sprite_index coloque:

Código:
instance_create(x,y,"Objeto_a_ser_criado")

Ja a valocidade do tiro você configura pelo próprio objeto de tiro com o código:

Código:
hspeed += 5 ou hspeed -= 5


Dica: coloca um evento no objeto tiro, pra quando ele sumir da room, o objeto ser destruído, para evitar muitas "Instancias" no mapa, podendo causar lag...

kelvindeth

Número de Mensagens : 135
Idade : 24
Data de inscrição : 14/05/2009
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por Nicolas em Ter 24 Maio 2011, 19:21

Kelvindeth obrigado por me ajudar deu certo so nao deu certo no tiro,eu tentei fazer o seguinte:

Código:
if global direita = true
{
hspeed=+8
}

Else > Aqui deu erro

if global direita = false
{
hspeed=-8

Esse codigo esta errado em que parte?

Nicolas

Número de Mensagens : 492
Idade : 17
Data de inscrição : 23/02/2010
Reputação : 4
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Como fazer o player atirar para o lado que ele está virado?

Mensagem por Conteúdo patrocinado Hoje à(s) 17:15


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