Conectar-se
Quem está conectado
31 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 31 Visitantes

Nenhum

Ver toda a lista


Compartilhe
Ver o tópico anteriorIr em baixoVer o tópico seguinte
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 11/01/2014
Número de Mensagens : 284
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 11

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Onde colocar as variáveis?

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?
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: Onde colocar as variáveis?

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.
avatar
Ranking : Nota C
Notas recebidas : C
Data de inscrição : 11/01/2014
Número de Mensagens : 284
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 11

Prêmios
   : 0
   : 0
   : 0
Ver perfil do usuário

Re: Onde colocar as variáveis?

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.
avatar
Ranking : Nota B
Notas recebidas : C-D-A-B
Data de inscrição : 14/01/2011
Número de Mensagens : 2964
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 121

Prêmios
   : 1
   : 0
   : 3
Ver perfil do usuário

Re: Onde colocar as variáveis?

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.
avatar
Ranking : Nota B
Notas recebidas : B+B
Data de inscrição : 04/03/2012
Número de Mensagens : 1925
Insígnias de JAM :

Insignia 1x 0 Insignia 2x 0 Insignia 3x 0
Reputação : 144

Prêmios
   : 1
   : 2
   : 0
Ver perfil do usuário

Re: Onde colocar as variáveis?

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.
Conteúdo patrocinado

Re: Onde colocar as variáveis?

Ver o tópico anteriorVoltar ao TopoVer o tópico seguinte
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum