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.

Passar de room ao pegar chave Tópico resolvido

Perguntas? A comunidade te ajuda a resolver.
Avatar do usuário
Jejegames
Novato
Novato
Reações: 0
Mensagens: 5

Passar de room ao pegar chave

Mensagem por Jejegames » Ter Dez 27, 2016 2:29 pm

Como posso criar uma chave, e quando o player pegar ela, ele poder abrir uma porta

Avatar do usuário
thyago
Membro
Membro
Reações: 0
Mensagens: 60

Re: Passar de room ao pegar chave

Mensagem por thyago » Ter Dez 27, 2016 3:58 pm

em create do player:

Código: Selecionar todos

chave = false;
na colisão com o objeto chave:

Código: Selecionar todos

chave = true;
with(other){instance_destroy()}

Na colisão com a porta:

Código: Selecionar todos

if(chave == true){ room_goto(nome da room)}
 Esta bem basico, mas ja da uma idéia

Avatar do usuário
Rodrigo Santiago
Colaborador
Colaborador
Reações: 0
Mensagens: 273

Re: Passar de room ao pegar chave  Tópico resolvido

Mensagem por Rodrigo Santiago » Ter Dez 27, 2016 4:06 pm

Primeiro vamos criar variáveis, que são objetos na memoria que guardam valores, as variáveis podem ser acessadas pelo objeto que criou elas, pra ter uma variavel em que todos acessem ela precisa ser global.

Então vamos lá :

Crie um objeto chamado Controlador.
No evento GameStart (vai em Others > GameStart) coloque o seguinte codigo :

Código: Selecionar todos

global.chave_1 = false;
Explicação :
Aqui criamos a variavel "global.chave_1" ela possui o valor 'false'. Quando o jogador pegar a chave vamos mudar pra true.

Crie um objeto chamado Chave e ponha uma bela sprite de chave nele
No evento Create coloque :

Código: Selecionar todos

if (global.chave_1 == true) instance_destroy();
Explicação :
Caso a chave ja tenha sido pega, ele vai se auto destruir, ou seja, não vai mais aparecer na room caso o jogador volte para ela

No Objeto que é o jogador, crie um evento de colisão com o objeto Chave, e coloque o seguinte codigo :

Código: Selecionar todos

global.chave_1 = true;
with(other) instance_destroy();
Explicação :
Aqui mudamos o valor da variável para true, ou seja, ele 'pegou' a chave. E depois destruímos a chave

No objeto que é a Porta ponha o seguinte codigo na colisao com o jogador :

Código: Selecionar todos

if (global.chave_1 == true) {
  global.chave_1 = false;
  room_goto_next();
}
Explicação :
Nesse codigo ele vai pra proxima room apenas se ele tiver a chave, e note que ele 'perde' a chave, ja que o valor da variavel volta a ser 'false'

Avatar do usuário
Jejegames
Novato
Novato
Reações: 0
Mensagens: 5

Re: Passar de room ao pegar chave

Mensagem por Jejegames » Ter Dez 27, 2016 5:03 pm

Vlw mesmo pessoal, agora só falto criar o jogo kkkk

Trancado

Quem está online

Usuários navegando neste fórum: Google [Bot] e 1 visitante