"Amarrando pontas soltas..."
Vimos anteriormente como criar, deslocar, pegar ou
simplesmente soltar objetos. A questão agora é como eu
vou saber quais objetos estão no local do leitor ou jogador,
quais estão com ele e quais estão dentro de outro
objeto?
Antes de saber quais objetos será preciso saber quantos
objetos e para isso existe uma instrução simples:
O primeiro parâmetro indica o local dos objetos que serão
contados, ou seja,
jog = objetos com o jogador ou
leitor,
loc = objetos no mesmo local que o jogador
ou leitor e
dnt = objetos dentro do objeto que
for especificado no parâmetro
[obj].
O resultado da contagem será colocado no registrador
indicado pelo parâmetro
reg. Desta forma é possível
personalizar respostas para cada situação ou para cada
quantidade de objetos encontrados.
Mas como informar ao leitor ou produzir links que façam
com que cada script de objeto seja executado, caso o leitor
ou jogador assim o desejar?
Esta instrução monta, no registrador informado
reg,
uma string contendo a descrição curta de cada objeto que
corresponder à seleção
jog,
loc ou
dnt
. E olha que bacana: se for mais de um ou dois, o
sistema não apenas coloca as virgulas como finaliza
a frase com "e" e ponto final.
A instrução acima funciona da mesma forma que a anterior,
com a diferença de que cada descrição de objeto será
na verdade um link ativo para o script deste mesmo
objeto.
Lembre que essa descrição curta foi definida quando houve
a criação do objeto mas, ao longo do processamento da
aventura ou conto ela pode ser mudada. Por exemplo,
"um copo" pode ser alterado facilmente para "um copo
quebrado", se você quiser refinar a descrição em um
determinado ponto do jogo ou livro.
Mas como o nome diz, é apenas uma descrição curta, para
fazer uma referência ao objeto. Uma descrição mais detalhada
deve ser feita no script relativo ao próprio objeto.
O exemplo acima ilustra um script genérico que poderia
corresponder a uma ação do tipo "listar os objetos que
estão com o jogador". Vale o mesmo princípio para objetos
no local e para objetos dentro de outro objeto.
Destaque apenas para a instrução
#reg,3 cuja função
é, dentro do bloco
boxon ... boxoff mostrar o
conteúdo do registrador 3.
E se usarmos imagens?
Ok, entendi
Índice das páginas