Conectar-se
Quem está conectado
42 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 42 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 23/02/2010
Número de Mensagens : 492
Insígnias de JAM :

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

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

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

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)
avatar
Ranking : Sem avaliações
Data de inscrição : 14/04/2011
Número de Mensagens : 691
Insígnias de JAM :

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

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

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

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)
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 26/09/2010
Número de Mensagens : 270
Insígnias de JAM :

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

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

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

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
avatar
Data de inscrição : 23/02/2010
Número de Mensagens : 492
Insígnias de JAM :

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

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

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

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?
avatar
Data de inscrição : 14/05/2009
Número de Mensagens : 135
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: Como fazer o player atirar para o lado que ele está virado?

em Sex 20 Maio 2011, 17:46
Reputação da mensagem: 100% (1 votos)
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...
avatar
Data de inscrição : 23/02/2010
Número de Mensagens : 492
Insígnias de JAM :

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

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

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

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?
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 26/09/2010
Número de Mensagens : 270
Insígnias de JAM :

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

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

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

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
avatar
Data de inscrição : 14/05/2009
Número de Mensagens : 135
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: Como fazer o player atirar para o lado que ele está virado?

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...
avatar
Data de inscrição : 23/02/2010
Número de Mensagens : 492
Insígnias de JAM :

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

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

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

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?
Conteúdo patrocinado

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

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