Ganhar Pontuação ao minuto

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

Ganhar Pontuação ao minuto

Mensagem por ArcWolf em Qua 21 Mar 2012, 14:43

Boa Tarde,

Antes de mais , meus parabéns por este fórum, desde que me registei já me ajudou bastante.

Eu comecei fazer um jogo, em que já consegui por um relógio em tempo real, mas agora eu queria saber como poderei fazer ao adicionar um object ou ao clicar nesse mesmo object, o mesmo começar ganhar uma determinada pontuação.

(Exemplo : em 1 minuto baseado no relógio em tempo real, esse object ganhar 100 pontos ou créditos).

Pois isto seria uma peça importante para meu jogo, em que irá ser um jogo de browser.

Obrigado! Very Happy

ArcWolf

Número de Mensagens : 3
Idade : 41
Data de inscrição : 21/03/2012
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por Zero. em Qua 21 Mar 2012, 14:48

bem pode ser feito assim:
no obj_x (oque será clicado ou criado)
se ele for criado poem no create:
Código:

alarm[0]=30*60
(30 = 1 segundos em steps entaum 30 vezes 60 = a 1 minuto)
Código:

e no alarm[0]:
pontos+=100
alarm[0]=30*60

e se for no que vai ser clikado coloka no evento left button pressed:
alarm[0]=30*60

e no alarm[0] coloka igual ao outro exemplo

Espero que sirva flw

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por ArcWolf em Qua 21 Mar 2012, 17:04

FlyAway serviu perfeitamente, so que, so me dá 100 pontos no 1º min, eu queria que continuasse a dar pontos minuto a minuto.

" Exprimentei adicionar um (Event/Step) colocando entao o codigo :

score+=100
alarm[0]=30*60

funcionou, mas me dando pontos do continuamente"

O que pretendia neste caso era continuando a dar-me pontos minuto a minuto em que nesta experiencia nao fez o resultado que pretendia.

Se me poderes ajudar mais uma vez agradecia..

Obrigado!

ArcWolf

Número de Mensagens : 3
Idade : 41
Data de inscrição : 21/03/2012
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por Zero. em Qua 21 Mar 2012, 17:07

faz assim :
no create faz oque eu disse e no alarm[0] põe alarm[0]=30*60 ai vai ficar pra sempre .

Flw

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por shatterhand2 em Qua 21 Mar 2012, 17:14

30 * 60 = 3600. Se for pra por um valor constante, é melhor por o valor direto ao invés de fazer o processador gastar seus preciosos ciclos com cálculos desnecessários.

na verdade você quer fazer alarm[0] = 60*room_speed . Considerando que room_speed é a "velocidade" de frames por segundo que são executados na room, você garante que o tempo esperado será sempre 1 segundo, independente da velocidade que esteja setada na room.

shatterhand2

Número de Mensagens : 645
Idade : 33
Data de inscrição : 21/10/2009
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://shatterhand.beatthegame.net

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por Zero. em Qua 21 Mar 2012, 17:20

^Ta errado 30*60=1800 . Tanto faz é um calculo mto simples .

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por shatterhand2 em Qua 21 Mar 2012, 17:25

hahaha.
exato, 1800, você tem razão. eu fiz 60*60, pq to acostumado a usar room_speed de 60, e não de 30.

De qualquer forma, por mais que seja muito simples, sempre que puder evitar um cálculo no seu código, evite. Isso pode ser a diferença entre um frame perdido ou não durante o desenho do jogo.


shatterhand2

Número de Mensagens : 645
Idade : 33
Data de inscrição : 21/10/2009
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://shatterhand.beatthegame.net

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por Zero. em Qua 21 Mar 2012, 17:30

Ainda não vejo nescessidade mas é bom sim mas n vejo ja q vai ser a cada minuto e é um calculo simples entre numeros constantes Happy

BLZ Resolveu ?

Zero.

Número de Mensagens : 1295
Idade : 20
Data de inscrição : 19/08/2010
Reputação : 47
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por shatterhand2 em Qua 21 Mar 2012, 17:41

Eu acho que já tava resolvido antes, a questão aqui ficou mais profunda Smile

É óbvio que se você está programando algo extremamente simples, voltado para rodar num processador mega-poderoso, não vai fazer tanta diferença fazer um cálculo que acontece a cada minuto do seu processamento ou simplesmente tacar o resultado do cálculo direto.

Mas se você é programador de verdade, se você pensa em programar de forma séria, você evita cálculos desnecessários, reutiliza variáveis, evita usar variáveis a toa, utiliza recursividade de forma inteligente...

Aliás, eu prevejo muita gente que tá acostumada a programar de qualquer jeito levando porrada quando for migrar pro Game Maker Studio, que "entrega" os executáveis para uma pá de dispositivos com poder de processamento muito mais modesto que a maioria dos computadores de mesa (e *muito menos* memória), se perguntando "Poxa, pq meu jogo roda tão lento nesse celular?".

Aquele 30*60 era totalmente desnecessário. Você estava fazendo 60 segundos * 30 frames por segundo. Se a ideia é usar a room_speed como base para calcular 1 minuto, usa a variável que guarda esse valor (E ai sim o cálculo é justificável). Fazer uma operação matemática entre duas constantes que nem estão armazenadas em variáveis nenhuma é desperdício de processamento.

Se você não quer usar boas práticas de programação, tudo bem, é uma opção sua, mas acho legal falar sobre isso com as pessoas. É "cacoete" de professor de programação Very Happy

Edit: Desculpa se pareceu chato, não era a intenção. Era mais um "toque" pra melhorar a sua programação. Eu às vezes ajo como se todo mundo fosse meu aluno, o que tenho que aprender que não é o caso Very Happy. Eu fico sempre preocupado pq meus alunos serão avaliados pelo mercado de trabalho, então eles precisam saber programar bem e bonitinho, não importa em que linguagem seja Very Happy

shatterhand2

Número de Mensagens : 645
Idade : 33
Data de inscrição : 21/10/2009
Reputação : 11
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 1
   : 0
   : 0

http://shatterhand.beatthegame.net

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por ArcWolf em Qua 21 Mar 2012, 18:31


Na verdade, eu sou muito novo em programação, o unico intuito de eu agora querer aprender e obter um conhecimento mais a fundo na programação, é pelo facto de poder com o tempo, criar um jogo.
Me fascinou a muito pouco tempo saber que afinal é possivel criar um jogo meu, pois desconhecia o Game Maker.

E o facto de ter posto aqui esta questão, foi simplesmente porque andei quase uma semana tentar saber por mim só como fazer no GM.
Sei que estou a tentar dar um paço maior que a perna, porque so agora estou a aprender programar e tenho ainda muito tuturial para ler, mas com este fascinio todo la chegarei, ate porque a medida que vou aprendendo mais me entusiasmo Very Happy


Um obrigado a todos, resultou perfeitamente!!!

ArcWolf

Número de Mensagens : 3
Idade : 41
Data de inscrição : 21/03/2012
Reputação : 1
Insignia 1 x 0 Insignia 2 x 0 Insignia 3 x 0
Prêmios
   : 0
   : 0
   : 0

Voltar ao Topo Ir em baixo

Re: Ganhar Pontuação ao minuto

Mensagem por Conteúdo patrocinado Hoje à(s) 18:20


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