Conectar-se
Quem está conectado
29 usuários online :: 1 usuário cadastrado, Nenhum Invisível e 28 Visitantes

Rodrigo Santiago

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Data de inscrição : 05/01/2013
Número de Mensagens : 19
Insígnias de JAM :

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

Duvida sobre uma função do Game maker em GML

em Sab 05 Jan 2013, 20:13
Saudações da todos.

Pessoal, ainda sou iniciante, mas eu pesquisei muito e li todo o arquivo de ajuda do game maker, mas ainda tenho uma duvida relacionado a função
place_free(x,y+1)

Ou seja: o que ela significa e sobre qual condição ela é ativada ?


Eu imagino que seja o seguinte:


place_free(x,y+1) : Se estiver livre de colições ( no caso com o chão ) com o chão em 1 pixel. então, execute isso. É assim que funciona essa função ?

Ou é assim :place_free(x,y+1) caso obj_Hero esteja com o pé no chão. Então execute isso.


alguém poderia tirar essas duvidas e ao mesmo tempo, enriquecer com informações adicionais.

Obrigado a todos que poderem ajudar.

att:

Ranking : Nota C
Notas recebidas : C+B
Data de inscrição : 26/07/2008
Número de Mensagens : 6037
Insígnias de JAM :

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

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

Re: Duvida sobre uma função do Game maker em GML

em Sab 05 Jan 2013, 20:24
Veja o tutorial na minha assinatura que fala sobre colisões. Coloquei até umas imagens descritivas.

Até mais!
avatar
Ranking : Nota C
Notas recebidas : D-D-D-C-C-B
Data de inscrição : 15/03/2012
Número de Mensagens : 564
Insígnias de JAM :

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

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

Re: Duvida sobre uma função do Game maker em GML

em Sab 05 Jan 2013, 20:26
então o place_free como voce citou, serve para checar se tem colisão, vou citar um exemplo de gravidade
if place_free(x,y+1)\\isso checa se nao tem nada abaixo dos pés
{
gravity=0.5 \\aqui ativaa a gravidade
gravity_direction=270 \\aqui é a direção da gravidade
}
else \\aqui checa se a função de cima for falsa
gravity=0 \\aqui deixa a gravidade como zero

então é isso, o place_free checa se não tem colisão, vc tbm pode usar ele no movimento do carinha para checar se tem uma parede, assim o movimento não fica travado ou patinando, dai obviamente para fazer isso não vai usar o y+1, e sim o x+o valor que voce quiser, ou o x-se a direção for a esquerda
Espero ter ajudado Very Happy
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