GMBR
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.
Entrar

Esqueci-me da senha

Últimos assuntos
» Colisões não funcionando
por RastaMaan Sex 26 Abr 2024, 19:49

» Como ajustar velocidade de cada frame da animação no game maker
por pequetux Sex 26 Abr 2024, 16:45

» Preciso de ajuda
por AftonDuGrau Dom 21 Abr 2024, 20:18

» Como faz o evento drawn GUI, não se repetir?
por aminaro Sex 19 Abr 2024, 20:30

» PROBLEMAS COM FÍSICAS DE ÁGUA
por aminaro Ter 16 Abr 2024, 10:07

» Retorno da GMBR!!!
por Ralphed Sex 12 Abr 2024, 22:45

» JOGADOR PARANDO NO AR QUANDO ATACA
por aminaro Qua 10 Abr 2024, 13:51

» Problemas com texto interativo
por Kaaru72 Dom 07 Abr 2024, 11:31

» Erro escondido e indecifrável
por dev_gabize.azv Qui 04 Abr 2024, 10:11

» Mudar cor de apenas uma palavra
por Ralphed Sáb 30 Mar 2024, 00:39

» Procuro Programador de game maker
por Wou Sex 15 Mar 2024, 10:27

» Mod APK
por gamerainha Qua 13 Mar 2024, 06:30

» Aceito pedidos de sprites (Com exemplos meus)
por Sevilha Qua 28 Fev 2024, 12:17

» Inventário simples
por Isquilo_Roedor Qui 22 Fev 2024, 15:18

» Problemas na programaçnao de inimigo [jogo DOOM LIKE]
por Black Mirror Dom 11 Fev 2024, 13:34

» ANDROID MULTI TOUCH
por DiegoBr Dom 04 Fev 2024, 12:13

» Servidor de Discord do fórum?
por Lighter Sáb 27 Jan 2024, 17:18

» Save e Load Json
por Klinton Rodrigues Qui 25 Jan 2024, 11:12

» Colisão com mais de um objeto
por aminaro Seg 22 Jan 2024, 15:02

» Oi sou novo aqui
por Thiago Silveira Alexandre Sáb 20 Jan 2024, 20:55

» Como acessar conteudo comprado no marketplace
por macmilam Sex 19 Jan 2024, 07:42

» Devlogs em vídeos do Block Room
por Joton Seg 15 Jan 2024, 16:56

» Alguém aqui já ganha dinheiro com seus games?
por Joton Seg 15 Jan 2024, 16:49

» ACERVO GMBR MAGAZINE
por Joton Qui 11 Jan 2024, 19:21

» como aumentar o obj sem aumentar a colisão??
por GabrielXavier Qua 10 Jan 2024, 07:21


[Resolvido]mudar a direção de um objeto...

2 participantes

Ir para baixo

[Resolvido]mudar a direção de um objeto... Empty [Resolvido]mudar a direção de um objeto...

Mensagem por matheushdj Qua 24 Jun 2020, 20:31

ola pessoal, preciso mudar a direção de um objeto...
exemplo, meu objeto vai da direita para a esquerda, quero apertar o espaço,
e quando ele estiver indo para a direita ele inverta e vai pra esquerda e vise versa.
estou usando o clamp para o movimento...

if (x != clamp(x, xstart-130, xstart+110))
{
hspeed *=-1;
}


Última edição por matheushdj em Sex 26 Jun 2020, 21:56, editado 1 vez(es)
matheushdj
matheushdj

Games Ranking : Sem avaliações

Data de inscrição : 24/06/2020
Reputação : 0
Número de Mensagens : 8
Prêmios : [Resolvido]mudar a direção de um objeto... Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

[Resolvido]mudar a direção de um objeto... Empty Re: [Resolvido]mudar a direção de um objeto...

Mensagem por Diemorth Qui 25 Jun 2020, 00:28

Olá matheushdj, seja bem-vindo ao fórum!

Para fazer isso você pode usar um keyboard_check_pressed para checar se foi pressionado a tecla e com isso trocar a velocidade horizontal(que é o que seu código está fazendo.)

Ficaria algo assim, no evento step adicione esse código:
Código:
if (keyboard_check_pressed(vk_space))
hspeed *= -1;

Em resumo ele checa se foi pressionada a tecla indicada(que nesse caso é o espaço/vk_space). Caso aconteça, ele multiplica a hspeed(velocidade horizontal) por -1, na prática isso faz ir para a direção contrária.

Boa produção para você, se tiver mais alguma dúvida, fique a vontade para compartilhar! Very Happy
Diemorth
Diemorth

Games Ranking : Sem avaliações

Data de inscrição : 26/01/2020
Reputação : 61
Número de Mensagens : 208
Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • Java
  • Web Tecnology
  • Unreal
  • Javascript
  • RPG Maker
  • C ou C++
  • Outros


https://diemorth.github.io/diemorth

Ir para o topo Ir para baixo

[Resolvido]mudar a direção de um objeto... Empty Perfeito!

Mensagem por matheushdj Qui 25 Jun 2020, 21:22

Meu amigo Diemorth, perfeito, funcionou perfeitamente.
Achei q ja tinha feito isso kkk
muito obrigado mesmo

estou criando um joguinho, depois quero postar ele...

obrigado.

Tenho outra duvida, mais nao sei se consigo explicar...

quero alguns quadrados caindo pela tela da room de forma bem aleatoria e rodando, tipo
sendo jogados la de cima.
matheushdj
matheushdj

Games Ranking : Sem avaliações

Data de inscrição : 24/06/2020
Reputação : 0
Número de Mensagens : 8
Prêmios : [Resolvido]mudar a direção de um objeto... Empty

Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 0

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0

Ir para o topo Ir para baixo

[Resolvido]mudar a direção de um objeto... Empty Re: [Resolvido]mudar a direção de um objeto...

Mensagem por Diemorth Ter 30 Jun 2020, 15:46

Vou tentar fazer algo seguindo o que você escreveu, se a intenção for algo diferente, pode falar que tentamos adaptar o código! Very Happy

Para os quadrados você precisa criar um novo objeto(nesse caso pode nomear ele como obj_quadrado), pode associar o sprite que quiser, no evento create você pode colocar:

Código:
vspeed = 15;

Isso vai fazer ele "cair". Para ele girar, você pode no evento step colocar algo assim:

Código:
image_angle += 18;

Isso vai fazer ele girar, nesse ponto se você colocar o objeto na room ele vai cair girando.
Caso ele esteja girando de uma maneira estranha possivelmente é o pivô do sprite que está fora do centro.(Se não conseguir configurar isso posso mandar prints de como resolver).

É interessante destruir esse objeto quando ele sair da tela(pela parte inferior), então no evento Other > Outside room você pode colocar:

Código:
if (y> room_height)
instance_destroy();

O if é importante para destruir apenas se esse objeto sair pela parte inferior da tela.
Agora falta gerar esse objeto em posições aleatórias, pra isso vamos usar a função random.

Crie um novo objeto, nomeie ele como obj_spawner, ele não precisa de um sprite. No evento create, coloque isso:

Código:
alarm[0] = room_speed * 2;

Isso vai definir um alarme(que vai ser acionado depois de passar um determinado tempo).
Você pode usar o valor que achar melhor, como o tempo do jogo corre em frames por segundo, estou usando o room_speed pra transformar o "2" ali em segundos.

No evento alarm0, você tem que colocar:

Caso no GameMaker:Studio 1.4.9 ou em versões anteriores:

Código:
instance_create(random(room_width), -32, obj_quadrado);
alarm[0] = room_speed * 2;

Caso no GameMaker:Studio 2:

Código:
instance_create_depth(random(room_width), -32, 0, obj_quadrado);
alarm[0] = room_speed * 2;

A cada 2 segundos vai criar um quadrado no topo da tela, em uma posição horizontal aleatória, com isso ele vai cair girando e quando sair da tela, pela parte inferior ele vai ser destruído.
Você pode tirar todos os quadrados da tela e deixar apenas esse segundo objeto.

Caso tenha algum problema ou dúvida com isso, não deixe de perguntar! Bom estudo e bom projeto para você! :>

Documentação Extra:
Diemorth
Diemorth

Games Ranking : Sem avaliações

Data de inscrição : 26/01/2020
Reputação : 61
Número de Mensagens : 208
Medalhas x 0 Tutoriais x 0 Moedas x 0

Ouro x 0 Prata x 0 Bronze x 2

Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Unity
  • Java
  • Web Tecnology
  • Unreal
  • Javascript
  • RPG Maker
  • C ou C++
  • Outros


https://diemorth.github.io/diemorth

Ir para o topo Ir para baixo

[Resolvido]mudar a direção de um objeto... Empty Re: [Resolvido]mudar a direção de um objeto...

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos