Entrar
Últimos assuntos
» player não consegue andarpor lovn7 Qui 21 Nov 2024, 13:33
» É possível fazer istó no game maker
por William Lima Qui 21 Nov 2024, 10:56
» Rio Rise - novo launcher do Gta San Andreas SAMP Brasil
por Lua Sáb 16 Nov 2024, 20:22
» (Resolvido) Cenario longo x Texture Pages
por josuedemoraes Sáb 16 Nov 2024, 15:31
» Kids' band
por Adilson Lucindo Santos Sex 15 Nov 2024, 12:23
» (RESOLVIDO) Engasgos-Troca de Sprites/animações
por josuedemoraes Ter 12 Nov 2024, 01:49
» Block Room - DEMO
por Joton Qua 06 Nov 2024, 22:58
» Game Infinito vertical (subindo)
por macmilam Sáb 26 Out 2024, 12:36
» Retorno da GMBR!!!
por Dancity Ter 22 Out 2024, 16:36
» Máquina de estados
por aminaro Qui 10 Out 2024, 13:33
» como faço pra um objeto colidir com o outro e diminuir a vida do player ?
por josuedemoraes Qui 03 Out 2024, 16:51
» RESOLVIDO: Colisão com objetos moveis
por josuedemoraes Qua 02 Out 2024, 20:28
» Crypt of the Blood Moon
por divin sphere Qua 11 Set 2024, 18:18
» como fazer um objeto seguir?
por divin sphere Dom 18 Ago 2024, 18:08
» Procuro de alguém para Modelar/Texturizar/Animar objetos 3D
por un00brn Dom 11 Ago 2024, 11:10
» Destruição de cenário (estilo DD Tank)
por CoronelZeg Sex 09 Ago 2024, 17:16
» RESOLVIDO-Como destruir uma instancia especifica de um objeto
por josuedemoraes Ter 23 Jul 2024, 00:40
» Automatizar a coleta de id
por GabrielXavier Seg 22 Jul 2024, 18:01
» Preciso de ajuda para concluir um pequeno projeto
por lmoura Qui 27 Jun 2024, 15:45
» ANGULO ACOMPANHAR O OBJETO
por Klinton Rodrigues Qui 27 Jun 2024, 08:34
» Musica reinicia quando sala reinicia
por GabrielXavier Ter 18 Jun 2024, 07:28
» como fazer uma copia de gd
por generico_cube Sex 14 Jun 2024, 15:48
» Square Adventure
por guilherme551 Ter 11 Jun 2024, 09:54
» como posso definir limite de uma variavel
por GabrielXavier Sex 07 Jun 2024, 14:14
» [Resolvido] Dúvida, colisão única de objeto
por vdm842 Sex 24 maio 2024, 09:50
AJUDA: Seguir objeto sem parar
2 participantes
Página 1 de 1
AJUDA: Seguir objeto sem parar
Salve galera, o negócio é o seguinte: estou fazendo um jogo de futebol (bem tosco, é meu primeiro jogo) e queria que meu adversário ( sim , é 1vs1) seguisse a bola sem parar. Já fiz o modo multiplayer, que é human vs human e é só a bola encostar no gol e eles voltam à posiçao inicial. Até ai tudo bem, mas no singleplayer eu coloquei um script que vi aqui no site mesmo e o adversário segue a bola e quando encosta nela, ele para. Queria que ele continuasse batendo nela até alguem acertar o gol. Valeu!
pedr0bandeira- Data de inscrição : 26/06/2010
Reputação : 0
Número de Mensagens : 58
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA: Seguir objeto sem parar
Coloque no STEP do adiverssário:
Então tem que fazer ela se mover quando encostar com o adiverssário !
Adicione no objeto adiverssário uma colisão com a bola, e coloque o seguinte código:
e ela se moverá naquela direção com uma velocidade de 10 pixeis por step !
Mas assim a bola irá em uma velocidade constante de 10px por step e não vai parar nunca, então coloque no STEP do objeto bola isto:
Agora mude o nome dos objetos para os seus objetos, e regule os valores da velocidade de acordo com o que fique melhor com o seu game !
Obs: Fiz de cabeça, se aparecer algum erro, reporte o erro para que seja corrigido !
- Código:
move_towards_point(obj_bola.x,obj_bola.y,5)
Então tem que fazer ela se mover quando encostar com o adiverssário !
Adicione no objeto adiverssário uma colisão com a bola, e coloque o seguinte código:
- Código:
with(other) // O other é a bola !
{
direction=point_direction(obj_adiverssario.x,obj_adiverssario.y,obj_gol.x,obj_gol.y)
speed=10
}
e ela se moverá naquela direção com uma velocidade de 10 pixeis por step !
Mas assim a bola irá em uma velocidade constante de 10px por step e não vai parar nunca, então coloque no STEP do objeto bola isto:
- Código:
friction=0.2
Agora mude o nome dos objetos para os seus objetos, e regule os valores da velocidade de acordo com o que fique melhor com o seu game !
Obs: Fiz de cabeça, se aparecer algum erro, reporte o erro para que seja corrigido !
Denis Lemos- Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Unity
- C#
- Godot
- C ou C++
Re: AJUDA: Seguir objeto sem parar
Valeu cara, só que eu nao consigo fazer gol no meu próprio jogo! eauaeheauh. Deu certo mas ainda tem um problema, quando a bola ta no campo dele, ele nao se meche, fica meio que "protegendo" a bola. Ele até segue a bola, mas para na frente dela e tranca ela com a parede (pq nao tem lateral, pega na parede e volta). e só ele faz gol agora ): nao consigo pegar a bola.
AH, entendi o que ele faz. Ele só toca a bola quando ele está de frente para o gol. :/
AH, entendi o que ele faz. Ele só toca a bola quando ele está de frente para o gol. :/
pedr0bandeira- Data de inscrição : 26/06/2010
Reputação : 0
Número de Mensagens : 58
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA: Seguir objeto sem parar
Para a bola não trancar na parede, você pode adicionar no objeto bola um evento de colisão com os objetos laterias, e na aba "move" arrastar o ícone "BONCE" e dar OK !
Ele fará a bola rebater na parede como se fosse uma bolinha de sinuca, talvez ajude a evitar o outro jogador trancá-la entre parede e ele !
Bom, sobre ele ficar parado quando a bola está no campo dele, eu não tinha pensado nisso antes, mas aconteceu um baita erro de lógica, pois bem vamos ver o que deve estar acontecendo:
O código faz o seguinte, quando o outro jogador encosta na bola ele caucula a direção da bola para onde a bola tem que ir, de acordo com as suas coordenadas em linha com o gol, então quando ele bate na bola no seu campo ele fica paradão entre a bola e o gol trancando o caminho, e a bola tenta ir para a direção do gol, mas como o bocó está persseguindo a bola, os dois ficam se precionando um contra o outro, causando o empacamento !
Tente ajustar o código de colisão do adiverssário com a bola, talvez corrija:
Agora ele só vai chutar a bola se não estiver na frente da bola para o gol, ou seja se ele estiver encostando em uma linha imaginária desenhada da bola até o gol, "senão", se ele estiver na frente, ele vai chutar a bola para o lado até dar a voltinha, não sei se essa voltinha vai funcionar, mas creio que sim !
Obs: Onde está escrito "self" se der erro, mude para o nome do objeto adiverssário, é que estou fazendo de cabeça, e não lembro bem os argumentos e o nome das funções !
Ele fará a bola rebater na parede como se fosse uma bolinha de sinuca, talvez ajude a evitar o outro jogador trancá-la entre parede e ele !
Bom, sobre ele ficar parado quando a bola está no campo dele, eu não tinha pensado nisso antes, mas aconteceu um baita erro de lógica, pois bem vamos ver o que deve estar acontecendo:
O código faz o seguinte, quando o outro jogador encosta na bola ele caucula a direção da bola para onde a bola tem que ir, de acordo com as suas coordenadas em linha com o gol, então quando ele bate na bola no seu campo ele fica paradão entre a bola e o gol trancando o caminho, e a bola tenta ir para a direção do gol, mas como o bocó está persseguindo a bola, os dois ficam se precionando um contra o outro, causando o empacamento !
Tente ajustar o código de colisão do adiverssário com a bola, talvez corrija:
- Código:
if not collision_line(obj_bola.x,obj_bola.y,obj_gol.x,obj_gol.y,self,true,true) // Se o bocó não estiver parado na frente
{
with(other) // O other é a bola !
{
direction=point_direction(obj_adiverssario.x,obj_adiverssario.y,obj_gol.x,obj_gol.y)
speed=10
}
}
else // Igual hà "senão" ou seja, se estiver na frente da bola !
{
with(other) // Other é a bola !
{
direction=obj_adiverssario.direction+90 // Regule o 90 ao seu gosto, quanto maior, mais rápido será a volta !
speed=10
}
}
Agora ele só vai chutar a bola se não estiver na frente da bola para o gol, ou seja se ele estiver encostando em uma linha imaginária desenhada da bola até o gol, "senão", se ele estiver na frente, ele vai chutar a bola para o lado até dar a voltinha, não sei se essa voltinha vai funcionar, mas creio que sim !
Obs: Onde está escrito "self" se der erro, mude para o nome do objeto adiverssário, é que estou fazendo de cabeça, e não lembro bem os argumentos e o nome das funções !
Denis Lemos- Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Unity
- C#
- Godot
- C ou C++
Re: AJUDA: Seguir objeto sem parar
Ae cara, deu uma boa melhorada, agora ele ja tem mais "angulo" pra chutar, mas a voltinha deu fail haeiaeh e ele fica na frente da bola ainda. Man, tem algum site que explica a linguagem certinho do GM? Pq eu faço curso de web design e já tenho uma noçao de algoritimos e lógica. Valeu pelas dicas, vou continuar tentando aqui, só falta eu entender a linguagem =D.
e tipo, o negocio do bounce eu já tinha feito, só que de tanto prenssar a bola com a barreira, a bola buga e sai do mapa. dai eu fiz um esqueminha pra reiniciar o jogo
e tipo, o negocio do bounce eu já tinha feito, só que de tanto prenssar a bola com a barreira, a bola buga e sai do mapa. dai eu fiz um esqueminha pra reiniciar o jogo
pedr0bandeira- Data de inscrição : 26/06/2010
Reputação : 0
Número de Mensagens : 58
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Re: AJUDA: Seguir objeto sem parar
O melhor site para aprender a linguagem, é aqui no fórum mesmo, tem muitos tutorias, sempre tem alguém que sabe te responder !
Mas também, no próprio GM tem o help, onde se encontra todos os comandos da linguem do programa, é só apertar no ícone com sinal de interrogação dentro de uma bolinha azul, no cabeçário do programa, que abrira o help, procure pela seção GML, que ensina tudo sobre os códigos, só que está em ingles, mas nada que o google tradutor não resolva !
Mas lendo na seção de tutorias daqui do fórum, se aprende bem ligeiro os comandos mais usados e com o tempo se aprende todos eles !
Bom a voltinha era para funcionar, tente diminuir lá onde está o 90, coloque 45 ou menos, ou talvez outra função que você já tinha feito esteja em conflito, só fuçando mesmo você descobre o problema !
Qualquer dúvida é só perguntar aí que quem souber, certamente te ajudará, a galera daqui é tudo gente boa !
Mas também, no próprio GM tem o help, onde se encontra todos os comandos da linguem do programa, é só apertar no ícone com sinal de interrogação dentro de uma bolinha azul, no cabeçário do programa, que abrira o help, procure pela seção GML, que ensina tudo sobre os códigos, só que está em ingles, mas nada que o google tradutor não resolva !
Mas lendo na seção de tutorias daqui do fórum, se aprende bem ligeiro os comandos mais usados e com o tempo se aprende todos eles !
Bom a voltinha era para funcionar, tente diminuir lá onde está o 90, coloque 45 ou menos, ou talvez outra função que você já tinha feito esteja em conflito, só fuçando mesmo você descobre o problema !
Qualquer dúvida é só perguntar aí que quem souber, certamente te ajudará, a galera daqui é tudo gente boa !
Denis Lemos- Data de inscrição : 17/05/2009
Reputação : 1
Número de Mensagens : 938
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Plataformas :- Game Maker 8.0 ou 8.1
- Game Maker Studio 1.4
- Unity
- C#
- Godot
- C ou C++
Re: AJUDA: Seguir objeto sem parar
Já deu de perceber, tu mesmo ja me ajudou mto, vlw cara
pedr0bandeira- Data de inscrição : 26/06/2010
Reputação : 0
Número de Mensagens : 58
Prêmios :
x 0 x 0 x 0
x 0 x 0 x 0
x 0 x 0 x 0
Tópicos semelhantes
» [ajuda]como fazer objeto seguir com gravidade
» [Ajuda] Tiro seguir objeto dentro do alcance
» [ajuda] Objeto seguir player como se estivese fazendo parte dele.
» [Resolvido]parar objeto
» Como fazer um objeto seguir um objeto próximo?
» [Ajuda] Tiro seguir objeto dentro do alcance
» [ajuda] Objeto seguir player como se estivese fazendo parte dele.
» [Resolvido]parar objeto
» Como fazer um objeto seguir um objeto próximo?
Página 1 de 1
Permissões neste sub-fórum
Não podes responder a tópicos