Com a implementação
do jogo independente, ou seja, o jogo rodando fora do editor
do Zeus, apareceu a necessidade de criar um botão
de encerramento do mesmo, para esses casos.
Nota:
no Zeus, os jogos nunca são encerrados,
mas apenas substituidos por outros jogos ou encerram com
o encerramento do próprio Zeus.
Para a criação
desse botão, podemos usar 3 tipos diferentes de solução.
Na primeira delas basta utilizar uma simples instrução
que ativa um botão pré programado, fornecendo
as coordenadas do canto superior esquerdo do botão,
dentro da imagem do painel principal do jogo.
|
//--- Botão de saida - btexit x,y ----------------------
//
//onde X = coord X do canto superior esquerdo do botão
// Y = coord Y do canto superior esquerdo do botão
...
btexit 577,31
... |
Este procedimento irá
mostrar o botão porém, se o jogo estiver sendo
executado dentro do Zeus, ele não
encerrará o mesmo, mas irá tornar a tela do
visor totalmente branca, para indicar que foi devidamente
executada a operação.
A imagem do botão (que
aparece acima) é sempre a mesma. Caso seja informada
a palavra "off" no lugar das
coordenadas, o botão será desativado.
Na segunda solução
podemos usar a programação dos scripts e criar,
por exemplo, um "botão" ou área
clicável dentro do visor do jogo (usando os links
clicáveis). Esse recurso pode fazer parte de uma
tela de recursos do jogo ou quando o jogador morre e a tela
de encerramento é apresentada a ele.
|
//--- Exemplo de botão saida no visor ------------------
...
//ativando a área clicável
shape 10,10,saida.bmp refresh link 0,10,10,57,33,1,5,Encerrar
... fim :Encerrar halt fim
|
Note que usamos um shape (saida.bmp)
para servir de referência à área clicável.
Como no caso anterior, se o jogo estiver rodando dentro
do Zeus, apenas a tela do visor ficará
totalmente branca.
A terceira solução
é um pouco mais complexa e exige o uso de uma instrução
não documentada (secreta) e duas imagens distintas,
que farão o papel de botão na posição
normal e botão na posição pressionado.
O primeiro passo é definir o botão:
|
//Instrução: btndef bt,cr,x,y,imgup,imgdw,scpt
//
//onde bt = número (1 a 5) do botão
cr = cursor utilizado pelo botão
x = coord X do canto sup esquerdo do botão
y = coord Y do canto sup esquerdo do botão
imgup = arquivo .bmp do botão posição normal
imgdw = arquivo .bmp do botão posição clicado
scpt = nome do script que será executado
...
btndef 1,1,540,60,saidaup,saidadw,ClicouSaida ... |
Neste caso será preciso
criar o script ClicouSaida e colocar nele
a instrução halt (que produz
efetivamente o encerramento do jogo impreterivelmente).
Carregue
o script encerrar (no Jogo
Teste Inicial) e execute-o para ter uma
idéia do funcionando dessas soluções.