Obrigado por visitar a The Game Makers Brasil 😁 Use o fórum de Dúvidas para fazer perguntas. Se está em busca de aprender dê uma olhada nos tutoriais.

Código para manter soldados ordenados em uma fila

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
Mysterious Stranger
Artista
Artista
Reações: 0
Mensagens: 62
Localização: BH

Contato:

Código para manter soldados ordenados em uma fila

Mensagem por Mysterious Stranger » Qui Nov 28, 2019 12:00 pm

Boa tarde, gente.

Eu tenho um mapa onde soldados vão de um canto a outro. Quando "spawno", podem acabar sendo criado um soldado em cima de outro.
A questão é: Como faço para que um soldado aguarde a passagem do outro para só depois começar a caminhar?

Eu fiz um código que faz ele parar assim que encontra um outro soldado logo a frente.

Código: Selecionar todos

if( instance_position( x + 22, y, object0 ) && vStatus != "stop" )
{
    vStatus = "fila";
}
Quando o status é "fila", a hspeed se torna 0 até o soldado da frente sair da posição.
Esse código pode ser adaptado para o meu propósito?

Avatar do usuário
theguitarmester
Membro
Membro
Reações: 0
Mensagens: 23

Contato:

Re: Código para manter soldados ordenados em uma fila

Mensagem por theguitarmester » Qui Nov 28, 2019 10:00 pm

Boa noite, vim pra avisar que ainda estou vivo.
Algum conhecido ainda por aqui? o.o

Bom, estou há um bom tempo sem mexer com o GameMaker e até com jogos (mas sigo forte na área de desenvolvimento), mas vamos ver se eu ainda me lembro um pokito...

Acredito que tu pode sim aproveitar este código, uma abordagem seria tu pode colocar um outro valor de vStatus para indicar que o soldado não deve prosseguir, e que ele a récem foi criado, portanto quando o outro soldado sair da mesma região que ele, que ele possa prosseguir:

Código: Selecionar todos

if( !instance_position( x + 22, y, object0 ) && vStatus == "criado" )
{
    vStatus = "anda";
}
Seria algo assim :)

Avatar do usuário
Mysterious Stranger
Artista
Artista
Reações: 0
Mensagens: 62
Localização: BH

Contato:

Re: Código para manter soldados ordenados em uma fila

Mensagem por Mysterious Stranger » Sex Nov 29, 2019 2:16 pm

theguitarmester escreveu:Boa noite, vim pra avisar que ainda estou vivo.
Algum conhecido ainda por aqui? o.o

Bom, estou há um bom tempo sem mexer com o GameMaker e até com jogos (mas sigo forte na área de desenvolvimento), mas vamos ver se eu ainda me lembro um pokito...

Acredito que tu pode sim aproveitar este código, uma abordagem seria tu pode colocar um outro valor de vStatus para indicar que o soldado não deve prosseguir, e que ele a récem foi criado, portanto quando o outro soldado sair da mesma região que ele, que ele possa prosseguir:

Código: Selecionar todos

if( !instance_position( x + 22, y, object0 ) && vStatus == "criado" )
{
    vStatus = "anda";
}
Seria algo assim :)
Bem vindo de volta!
Eu fiz, mas não funcionou. Mas usei sua ideia de criar um pré-status de "criado" e adaptei aqui o código e funcionou!

Código: Selecionar todos

if( instance_position( x, y, object0 ) && vStatus == "created" )
{
    var vID_other;
    vID_other = instance_position( x, y, object0 );
    vID_other.vStatus = "running";
}
Valeus!

Responder

Quem está online

Usuários navegando neste fórum: Ahrefs [Bot], Bing [Bot] e 13 visitantes