Onde colocar as variáveis?

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Onde colocar as variáveis?

Mensagem por vitorfernandes13 em Qui 06 Fev 2014, 14:21

Mas, o bug, não desisti de me atormentar  bounce Ja fiz 99,999999% do jogo, e resolvi criar um "apresentação" com 3 rooms, com agradecimentos, e contatos, o problema é que quando aparece a fase inicial, sempre da erro o Game Maker nao localiza as variaveis.

Crie algumas variáveis são elas:

Código:

//Número de vidas
global.vidas = 15

//Pontuação
global.pontuacao = 0

//Maçãs
global.apple = 10

//Velocidade
global.velocidade = 7

//Pulo
global.pulo = 0

//Minimo
global.minimo = 1

//Sangue chefe
global.sanguechefe = 10

//Portugues
global.portuguese = false

E tentei colocar inicialmente no create do player, mas, os valores nao mudam!! Quando coloco no step, e o player entra em contato com um bloco (global.pontuacao += 100) aparece 100 na HUD, e depois a pontuacao zera  bom então resolvi colocar em "Game Start" e deu certo blz mas, quando eu coloquei essas tres room de apresentação, antes do personagem em si ser criado na quarta room, sempre dá erro, pq? onde eu coloco isso?

vitorfernandes13

Ranking : Nota C
Número de Mensagens : 284
Data de inscrição : 11/01/2014
Notas recebidas : C
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Onde colocar as variáveis?

Mensagem por saim em Qui 06 Fev 2014, 14:57

Você está fazendo confusão com o fluxo de eventos.
O evento step acontece várias vezes por segundo. Se você definir que "global.pontuacao := 0;" várias vezes por segundo, adivinha qual vai ser o valor de global.pontuacao.
E evento game_start acontece só uma vez por sessão de jogo. Adivinha em que momento o evento acontece. Esse momento não dura quase nada, é mais rápido que os olhos podem ver. É um instantezinho. Aquele intantezinho em que o jogo termina de carregar e começa a rodar. Se o objeto com esse evento não está na primeira room do jogo, o evento nunca vai encontrar a condição de acontecer. Você deve estar confundindo com o evento de criar o objeto (create). Não é a mesma coisa. Acho que é o tipo de coisa que assim que é mencionada, fica clara na cabeça, então não vou falar mais. Se precisar, eu falo mais.

Olha, é muito bom criar uma room pra inicializar o jogo. Essa medida, de acordo com o que li por aí, é muito comum em jogos profissionais. Então, mantenha esse hábito.
Quanto a onde declarar as variáveis, essa sua room inicial parece ter algum objeto. Você pode usar o game_start desse objeto pra declarar as variáveis.
Particularmente, eu gosto de criar um script (scr_inicializa, sempre uso esse nome) em que declaro as variáveis globais e chamar o script a partir do creation code da primeira room do jogo. Faço isso pra poder mexer no valor dessas variáveis a qualquer momento (eu mantenho uma cópia desse script num arquivo .txt e copio-colo o conteúdo sempre que quero mudar alguma coisa). Além disso, é mais fácil acessar um script do que um evento de um objeto.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Onde colocar as variáveis?

Mensagem por vitorfernandes13 em Qui 06 Fev 2014, 17:21

saim escreveu:Você está fazendo confusão com o fluxo de eventos.
O evento step acontece várias vezes por segundo. Se você definir que "global.pontuacao := 0;" várias vezes por segundo, adivinha qual vai ser o valor de global.pontuacao.
E evento game_start acontece só uma vez por sessão de jogo. Adivinha em que momento o evento acontece. Esse momento não dura quase nada, é mais rápido que os olhos podem ver. É um instantezinho. Aquele intantezinho em que o jogo termina de carregar e começa a rodar. Se o objeto com esse evento não está na primeira room do jogo, o evento nunca vai encontrar a condição de acontecer. Você deve estar confundindo com o evento de criar o objeto (create). Não é a mesma coisa. Acho que é o tipo de coisa que assim que é mencionada, fica clara na cabeça, então não vou falar mais. Se precisar, eu falo mais.

Olha, é muito bom criar uma room pra inicializar o jogo. Essa medida, de acordo com o que li por aí, é muito comum em jogos profissionais. Então, mantenha esse hábito.
Quanto a onde declarar as variáveis, essa sua room inicial parece ter algum objeto. Você pode usar o game_start desse objeto pra declarar as variáveis.
Particularmente, eu gosto de criar um script (scr_inicializa, sempre uso esse nome) em que declaro as variáveis globais e chamar o script a partir do creation code da primeira room do jogo. Faço isso pra poder mexer no valor dessas variáveis a qualquer momento (eu mantenho uma cópia desse script num arquivo .txt e copio-colo o conteúdo sempre que quero mudar alguma coisa). Além disso, é mais fácil acessar um script do que um evento de um objeto.

Teria problema para vc se eu enviasse o código fonte do meu jogo? Apenas para eu ter certeza de como fazer >Sad agora tbm estou com problemas no checkpoint, dps que eu tentei arrumar o codigo.

vitorfernandes13

Ranking : Nota C
Número de Mensagens : 284
Data de inscrição : 11/01/2014
Notas recebidas : C
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Onde colocar as variáveis?

Mensagem por saim em Sex 07 Fev 2014, 09:29

Cara, tem pelo menos um mês que estou tentando terminar a engine básica de um jogo que estou fazendo por passa-tempo. Não estou conseguindo trabalhar com jogos, ultimamente, mandar sua engine pra eu olhar "quando tiver tempo" seria deixar seu problema sem solução. Eu entro no fórum do meu trabalho, respondo às perguntas entre um serviço e outro, principalmente no começo da manhã e final da tarde.

Você entendeu o que eu disse com relação aos eventos? Se sim, acredito que o problema com declaração de variáveis esteja resolvido. Se não, diga que eu tento ser mais claro.

Quanto aos checkpoints, o que está acontecendo? Provavelmente é um problema à parte, mas se surgiu depois de mudar o código, pode estar relacionado.

Diga que códigos você colocou em que evento. Isso facilita um bocado.

saim

Ranking : Nota B
Número de Mensagens : 2964
Idade : 38
Data de inscrição : 14/01/2011
Notas recebidas : C-D-A-B
Reputação : 121
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 3

Voltar ao Topo Ir em baixo

Re: Onde colocar as variáveis?

Mensagem por JoaoVanBlizzard em Sex 07 Fev 2014, 10:45

Por que não criar uma room vazia com apenas um objeto que chama essas variáveis dentro dela e mude para a próxima room com as variáveis já declaradas, assim a chance de dar erro é bem menor.

JoaoVanBlizzard

Ranking : Nota B
Número de Mensagens : 1925
Idade : 38
Data de inscrição : 04/03/2012
Notas recebidas : B+B
Reputação : 144
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 2
   : 0

Voltar ao Topo Ir em baixo

Re: Onde colocar as variáveis?

Mensagem por Conteúdo patrocinado Hoje à(s) 22:24


Conteúdo patrocinado


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo

- Tópicos similares

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