Se você leu
com atenção a página anterior, já deve ter
percebido que uma aventura nada mais é do que ir de script
em script, de acordo com os links criados em cada desvio. Na
verdade é quase como passar as páginas de um livro, ir
de local em local ou saltar entre páginas da internet. O mecanismo
é basicamente o mesmo, mas com algumas variações.
Existe um conjunto
grande de instruções que você pode usar para programar
cada página, local, ou script e o sub conjunto mais
importante é o das instruções link:.
Em resumo, uma instrução link: define
uma determinada área, pelas coordenadas X,Y,
com largura e altura. A área definida pode receber um elemento
(texto ou figura), servir para marcar um espaço clicável
ou ambos, receber um elemento clicável e, ao ser clicada, produzir
um desvio ou a execussão do script indicado.
Assim como visto
no exemplo anterior, o script inicial pode conter um link que inicia
a aventura, quer seja apresentando um menu de opções ou
indo diretamente a uma página, local ou script. Por
exemplo, digamos que a primeira posição da aventura O
Portal Maldito tenha o nome frenteportal.
O script start ficaria assim:
//==
script inicial ==================================
telpos= apresenta.png
Link: map,613,261,138,40,$frenteportal
fim
O passo seguinte
é criar o script de nome frenteportal.
Da mesma forma que fizemos com o script start,
inicialmente o script pode conter as seguintes instruções:
//==
frenteportal / posição em frente ao portal =========
telpos= fotopos1.png
setpos=
frenteportal
retscp= frenteportal
link: map,532,133,125,124,$portal
fim
Como já vimos,
a instrução telpos= diz ao sistema qual
é a tela da posição atual. Cabe a você produzí-la
e fazer o upload para o servidor da aventura. A instrução
setpos= indica para o sistema que é nessa posição
que o jogador está (mais à frente você vai entender
melhor isso). E a instrução retscp= indica
o nome do script de retorno, ou seja, se o jogador for para
um menu de opções (por exemplo) e quiser "retornar
ao jogo" sem selecionar nenhuma delas, o sistema saberá
exatamente onde ele estava.
Só falta
agora produzir o link de desvio, para "chegar mais perto"
do portal e faremos isso da mesma forma que fizemos no script
start, ou seja, criando uma instrução link: map.
Veja a figura abaixo como ficaria a posição frenteportal.
O passo seguinte
é construir da mesma forma o script portal,
que seria uma posição mais próxima para atravessar
o mesmo. Veja como ela seria:
//==
portal / posição bem em frente do portal ===========
telpos= fotopos2.png
setpos= portal
retscp= portal
link: fig,416,308,66,28,voltar.png,$frenteportal
fim
A maior
diferença em relação à posição
anterior é que colocamos uma seta no próprio painel para
indicar o "retorno" à posição anterior,
ou seja, ir para a posição que está "nas costas"
do jogador. Esta "seta" nada mais é do que uma imagem
que você já previamente preparou e fez upload no servidor
da aventura.
Note que a instrução
link: map mudou para link: fig acrescentando
o nome da figura que será mostrada. Veja como ficou:
Para complementar
o "giro" pelas posições, só faltou mesmo
dizer alguma coisa sobre elas para o jogador e em ambas as posições
colocaremos uma frase no rodapé...
na posição
frenteportal:
link: msg,30,329,435,32,5,Esse caminho
levou a um portal.,BIu000000
na posição
portal:
link:
msg,30,329,435,32,5,Você está diante do portal.,BIu000000
Ambas ficam imediatamente
antes da instrução fim e a instrução
usada será link: msg que, neste caso, vai colocar
a frase com o tamanho da fonte 5 e o parâmetro
BIu000000:
Você pode
construir uma aventura inteira só fazendo este tipo de navegação.
Como já foi dito,
os scripts podem representar as posições ou páginas
da aventura / livro mas não necessariamente apenas isso. No caso
de uma aventura interativa, todas as posições receberam
uma instrução retscp=. Agora é o momento de utilizar
este recurso.
Por exemplo, vamos criar
um script para servir como menu de opções, ou seja, embora
ele não seja realmente uma posição, terá
uma tela de fundo e uma frase específica.
//===
Script: menu ==============================
telpos= telamenu.png
link: fig,181,68,42,42,renew.png,renew.php?Scp=start
link: msg,230,85,300,30,5,Reiniciar a partida,BIu000000
link: msg,30,329,435,32,5,Selecione a opção
desejada.,BIu000000
link: tlk,674,267,72,32,5,voltar,$xvlt
fim
Note que a figura
renew.png vai ser o ícone clicável que
ativará a reinicialização da partida e neste caso
é executado um arquivo php específico
(renew.php), com o nome do script que será
carregado assim que a reinicialização terminar.
Para que este esquema
funcione perfeitamente é preciso incluir em todos os scripts
que representam as posições (no cado portal e frenteportal)
a seguinte linha:
link: fig,640,3,93,28,menu.png,$menu
O outro ponto importante
das páginas avulsas, tipo menu, é
o retorno à página / posição anterior se
o jogador não quiser reiniciar. Note que o link voltar
possui como script destino a palavra xvlt
e isso indica ao sistema para recuperar o nome do último script
colocado em retscp=.
É provável
que você já tenha notado que toda referência a um
script destino, nas instruções link:
começou com o caracter "$". Na verdade
a instrução correta seria:
link: tlk,674,267,72,32,5,voltar,exescp.php?Scp=xvlt
O uso do "$" serve apenas para abreviar a instrução
e facilitar a sua compreensão.
Gostou? Quer ver
o sistema funcionando? Cloque no link abaixo e estude os scripts.
Se estiver logado no Micro Aventuras faça o load da aventure
para conhecer de perto a programação dela.
http://tilt.net/html/microsis/inicio.php?Pfx=opm