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
» player não consegue andar
por 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


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

2 participantes

Ir para baixo

mudar - [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 : mudar - [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

mudar - [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

mudar - [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 : mudar - [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

mudar - [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

mudar - [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