sábado, 13 de dezembro de 2008

Tutorial - Relógio

Criar um relógio é bem complicado e exige conhecimento de scripting um pouco avançado. Este
tutorial exige total atenção aos detalhes, por isso leia bem e não pule nenhuma parte!

Antes de tudo, algumas dicas para você:
*Use os nomes de fields, variables iguais ao do tutorial para facilitar
*Siga tudo sem pular nada
*Tire bastante tempo para fazer isso, siga tudo com calma
*Use as imagens como orientação e sempre olhe nelas a cada passo

Para começar, vá na seção Scripting e crie duas variáveis: Hora e Minuto com valores zero
(de preferência use o mesmo nome do tutorial). Agora entre em Resources>Fonts e crie uma nova fonte de letra usando DigifaceWide e coloque como nome Relógio.

Agora começa a parte difícil. Entre em Interfaces e crie uma nova com nome Relógio (não precisa criar uma nova interface, pode ser na hud padrão, mas criar outra deixa o trabalho mais fácil).

Olhe a imagem abaixo e siga os passos:

1: Crie um Field de nome "BASE"(tudo caixa alta) na primeira posição com a configuração abaixo:


2: Crie um Field de nome "Hora" na segunda posição com a configuração abaixo:


3: Crie um Field de Initial Value/Text ":" na terceira posição com a configuração abaixo:



4: Crie um Field de nome "BASE2" na quarta posição com a configuração abaixo:



: Crie um Field de nome "Minuto" na quinta e última posição com a configuração abaixo:


Meio caminho já está feito, mas ainda falta a parte trabalhosa: o timer...
O primeiro timer será o mais chato de se fazer. Crie ele e configure de acordo com a imagem:



E clique em Edit Script. O script desse trigger ficará assim:




Não se assuste ainda, vamos editar passo a passo:
1: Crie um Variable Operation e selecione:
Expression:"Minuto"
Value: ADD - 1

2:Coloque um Comparison Branch e Configure assim:
Expression:"Minuto" (clique no quadrado ao lado e procure a variável)
Operator: >(Greater Than)
Value: 9

3: Coloque um Position Field com:
Field: "Minuto"
X: Field("BASE2").X
Y: Field("BASE2").Y

4: Coloque um Comparison Branch configurado:
Expression: Minuto
Operator: =(Equal)
Value: 60
*Ligue a segunda linha do primeiro Comparison ao segundo Comparison Branch.

5: Ligue outro Position Field com:
Field: "Minuto"
X: Math.Add(Field("BASE2").X,16)
Y: Field("BASE2").Y

6: Ponha um Variable Operation com:
Variable: Minuto
Value: Set - 0(Zero)

7: Coloque outro Variable Operation com:
Variable: Hora
Value: Add - 1

8: Coloque um novo Comparison Branch configurado assim:
Expression: Hora (selecionar clicando no quadrado)
Operator: >(Greater Than)
Value: 9
*Ligue a segunda linha do Comparison anterior ao novo Comparison Branch.

9: Coloque um Position Field com:
Field: "Hora"
X: Field("BASE").X
Y: Field("BASE").Y

10: Ligue um Comparison Branch com:
Expression: "Hora"
Operator: >= (Greater than or Equal to)
Value: 24
*Ligue a segunda linha do Branch anterior ao novo Comparison Branch.

11: Coloque um Position Field com:
Field: "Hora"
X: Math.Add(Field("BASE").X,16)
y: Field("BASE").Y

12: Finalize com um Variable Operation:
Expression: "Hora"
Value: Set - 0(zero)

Fique FELIZ! A parte trabalhosa acabou...

Agora só falta um úlimo detalhe, o segundo timer:


Clique em Edit Script e configure de acordo com a foto:


1: Coloque um Comparison Branch:
Expression: Minuto
Operator: >(Greater Than)
Value: 9

2: Na primeira linha coloque um Change Invisibility(Para Fields) com:
Field: BASE2
Invisible

3: Na segunda linha coloque outro Change Invisibility(Para Fields) com:
Field: BASE2
Visible

Salve tudo e vá para o Scripting>System Scripts>Introduction e coloque um Turn ON/OFF Interface e escolha a Interface Relógio e marque a caixa.

Pronto... Depois de um longo trabalho, só falta testar... Clique na aba Game e em Test Game,
lembrando de que é necessário ter o Introduction editado com um Position Character.

~~~ Tutorial por K4MY ~~~

12 comentários:

Ulquiorra disse...

Muito bom esse tutorial, tudo bem q eu ja sabia fazer isso mas pra quem n sabe vc eh um ótimo prof. :D

Dragon Man Diego disse...

eu não consigui fazer isso
mais eu não intendi a parte do
tempo 1 da quelas coisas la
um monte?

Gabriel disse...

Cara, ótimo tutorial! Consegui e funcionou perfeitamente! Só me atrapalhei um pouco, pelo fato de a versão do engine que uso é mais recente. Fora isso, PARABÉNS!

Unknown disse...

Legal!


Mais é q.......

O tempo dp Relógio começa as 0:00

E eu queria q o jogo Começasse as 10:00 mais ou menos!

Tem como mudar isso?

sr magnetico disse...

O meu num deu...........=(


o relogio aparece mais não saiu do 0:01 =( Fika o tempo todo, ja fiquei esperando mo tempão!
pq isso aconteceu?

Kami disse...

Começar a uma certa hora: Vá até:
System Script>Doubleclick em Introduction e coloque um Variable Operation. Procure pela hora e coloque Set 10.

Blog MOD disse...

o meu fica no 0:01 e não sai!
eu ja esperei mó tempao esperando mais fika nisso! putz fikei meia hoa fazendo isso ajuda ai

G. Pereira disse...

fiz na mesma interface... eu deixo igual?

G. Pereira disse...

valeu tio eu fiz sem os base e deu certo! usei o modo dia/noite tbm,e ficou show!começa às 8,e as 20 escurece!Valeu cara gostei do teus tutorial.

G. Pereira disse...

Ei Kami como eu faço para o relógio pausar quando eu aperto ESC?

MCroos disse...

dá pra faze muito mais facil.
muito mais curto.
sem o base
100% funcional.
é otimo o meu modo, porém to com preguiça de postar aqui

Pedro Belluzzo disse...

kami queria edir que vc atualizasse seus tutorias(pelo menos os mais dificeis)pq minha verção e avançada e tem coisa que não bate com essas fotos,o meu timer n apareceu nem os numeros ={