A primeira versão do jogo

para entender os conceitos e fundamentos da programação

Embora hoje possamos fazer coisas impensáveis nos anos 80, em termos tanto de programação, como de recursos visuais e sonoros, certos conceitos permanecem sem muita alteração e são justamente esses conceitos que norteiam toda a construção de um jogo.

Tomando como ponto de partida nosso aeroporto, retornemos por um breve instante aos primórdios da computação. Naqueles tempos (e em especial tratando-se do Sinclair ZX 81), não havia alta resolução como a conhecemos hoje. O termo "gráfico" era aplicado a um conjunto de blocos preto, branco ou cinza (na verdade uma espécie de tabuleiro de xadrez).

Cada conjunto de quatro blocos ocupava a posição equivalente a um caracter e normalmente os tratávamos como caracteres especiais. Logo abaixo temos uma panorâmica do nosso primeiro aeroporto: a pista, as caixas, o radar, a torre, a boma caindo e o avião (sim, aquele sinal de maior é o avião).

Tosco, não é mesmo? Mas preste atenção no radar e na sua construção. Na verdade ele não passa de uma fileira blocos gráficos, que gira apenas pela alternância desses blocos.

Os pontos vermelhos marcam os locais onde, se for detectada a presença da "bomba" (o ponto final), ocorrerá a explosão do mesmo. Veja a seguir, como a explosão foi construida com apenas três fases:

De uma forma simplificada, podemos dizer que o programa basicamente seguia o seguinte roteiro:

1)- Verifica se há uma bomba caindo;

1a)- Se houver, verifica se ela pode "descer" uma fileira (coordenada) e se chegou na altura da pista, verifica se acertou o radar, a torre ou uma caixa;

2)- Se há uma explosão acontecendo, monta a "fase" seguinte dela;

3)- Se o radar ainda está intacto (não deve demorar muito para ser detonado), gira a antena;

4)- Verifica se o avião "deu uma volta" na tela e se sim, desce mais uma coordenada.

5)- Verifica se o avião está na altura da pista e se ele pousou em segurança ou explodiu.

Chamamos a esse roteiro operacional de ciclo do jogo e a sua programação se baseia no uso de variáveis simples, usadas como marcadores (ou flags). Por exemplo: temos uma variável chamada Rad: se ela for 0, então o radar está intacto; se for 1, o radar foi atingido e deve-se usar a fase 1 da explosão do radar para mostrar o efeito na tela.

Depois 2 e finalmente 3. Assim saberemos que, se a variável Rad for diferente de zero, ela está sinalizando ou a explosão do radar ou ele já explodido.

Daqui para as versões em alta resolução, com 16 milhões de cores e sons digitais é só uma questão de produzir as imagens e adequar a programação aos tempos modernos. E isso nós veremos detalhadamente a seguir.


No club TILT tem mais...
Quer saber mais sobre esse assunto, conhecer mais técnicas, ver fontes e programação? Siga os links para o club TILT. Se ainda não é assinante, clique aqui e saiba como assinar.

 
online