segunda-feira, 16 de janeiro de 2012

Lição 2 - Programação de Jogos em ShellScript

A lição 2 fala sobre movimento, é um assunto muito legal, basicamente o que todos querem saber antes de iniciar a programação de um game.

Alem do movimento tem muita filosofia aqui. então vou tentar explicar todos os detalhes.

Nesse script você pode usar as letras (a,s,w,s) para movimentar a bolinha, e o (q) para sair.

#!/bin/bash
setterm -cursor off
clear
x=0
y=0
a=0
f=0
echo -n "o"
until [ $a = q ];do
read -n 1 a
clear
######## Leitura do Teclado ####
if [ $a = a ];then
let "x = x - 1"
fi
if [ $a = d ];then
let "x = x + 1"
fi
if [ $a = w ];then
let "y = y - 1"
fi
if [ $a = s ];then
let "y = y + 1"
fi
################################

##### Movimento da Bolinha #####
f=0
while [ $y -gt $f ];do
echo ""
let "f = f + 1"
done
f=0
while [ $x -gt $f ];do
echo -n " "
let "f = f + 1"
done
echo -n "o"
done
###############################
clear
setterm -cursor on
echo FIM


OK, agora que você brincou vamos falar sobre o script

setterm -cursor off
Aqui eu desligo o quadrado do cursor de digitação, para que apenas o que eu quero seja exibido.

clear
x=0
y=0
a=0
Apos isso limpo a tela e inicio todas as minhas variáveis com o valor que quero. é importante fazer isso para não haver erros na inicialização.

until [ $a = q ];do
read -n 1 a
clear
Incio o loop, e tem mais uma coisa importante aqui, o read -n1 a, pega apenas a tecla batida, ele não precisa do enter.

Apos isso sigo com o conceito de gráfico x,y que definem onde vou exibir o "o"

E de bônus, eu deveria usar um comando para fazer o sistema imprimir o "o" onde eu quero. mas me imaginei em um sistema ou linguagem onde não teria nem mesmo isso. e montei na marra.
imprimindo o numero de linhas [echo], e imprimindo colunas [echo -n " "] para chegar na posição x,y.



Um comentário: