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

Esqueci minha senha

Últimos assuntos
» [Ideia] Concurso para relembrar os bons tempos
por vinians Hoje à(s) 09:40

» GMBR 2020 (jogo comemorativo)
por Diemorth Hoje à(s) 09:24

» Rodar o jogo em iOS
por matheushdj Ontem à(s) 20:04

» [XCREATOR] [JAM] [UPD] Farm Defense
por vinians Qui 09 Jul 2020, 23:31

» Dúvida sobre GameMaker
por Super Games Qui 09 Jul 2020, 19:32

» Apresentação de Rojas231
por Super Games Qui 09 Jul 2020, 19:17

» Vender extensões no marketplace da yoyo games?
por Willy Qui 09 Jul 2020, 09:55

» [DOWNLOAD] Manual Game Maker 8 traduzido
por matheushdj Qua 08 Jul 2020, 21:41

» Máquina de estado/State Machine no Unity
por theguitarmester Ter 07 Jul 2020, 22:17

» Eu sou o MoisesBR
por GabrielXavier Ter 07 Jul 2020, 22:04

» Melhor pontuação
por matheushdj Seg 06 Jul 2020, 22:23

» Problemas com animação e ataque
por moisesBR Seg 06 Jul 2020, 22:05

» Ideia para futuros concursos
por moisesBR Seg 06 Jul 2020, 20:51

» Para quem quer mexer com a Godot
por Super Games Seg 06 Jul 2020, 09:45

» MOON - [Indie Game Solo]
por vinians Seg 06 Jul 2020, 08:40


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

Ir em baixo

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

Mensagem por matheushdj em 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 : 6
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

Voltar ao Topo Ir em baixo

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

Mensagem por Diemorth em 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 : 6
Número de Mensagens : 22
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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Java
  • Unreal
  • Javascript
  • C ou C++
  • Outros


https://diemorth.github.io/diemorth

Voltar ao Topo Ir em baixo

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

Mensagem por matheushdj em 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 : 6
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

Voltar ao Topo Ir em baixo

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

Mensagem por Diemorth em 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:
vspeed - image_angle - room_height - alarm - instance_create - instance_create_depth
Diemorth
Diemorth

Games Ranking : Sem avaliações

Data de inscrição : 26/01/2020
Reputação : 6
Número de Mensagens : 22
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
Plataformas :
  • Game Maker 8.0 ou 8.1
  • Game Maker Studio 1.4
  • Game Maker Studio 2.0
  • Java
  • Unreal
  • Javascript
  • C ou C++
  • Outros


https://diemorth.github.io/diemorth

Voltar ao Topo Ir em 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


Voltar ao Topo Ir em baixo

Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum