A programação

Se está criando ou pretende criar um Boardgame Digital, usando esse recurso do Micro Aventuras, então essa página foi feita especialmente para você.

Em primeiro lugar, os espaços do jogo são os espaços padrão do Boardgame, então vale ler ou reler o e-book geral sobre o sistema Card & Board aqui mesmo, na TILT online.

A abertura do jogo segue a lógica básica de todo jogo: apresentar informações pertinentes e fornecer links para o jogador entrar na partida. Um script "abertura" terá portanto uma aparência como a que se segue:

cardboard !,aber2.png
fontsize= 32
style= color:#FFFFFF;
brd= tic,520,770,060,060,proxima.gif,login
brd= tic,334,780,200,030,quero jogar,login
brd= tic,000,750,600,002,fio.gif

Note que o "motor" do Card & Board é acionado pela instrução "cardboard !". O ponto de exclamação apenas diz para o sistema que o nome que irá aparecer na aba do navegador é o próprio nome do jogo. Caso contrário, será mostrada a frase que estiver no lugar do "!".

As instruções específicas do "motor" Card & Board começam sempre com um "brd= ", seguido por parâmetros específicos. No caso acima temos uma instrução "tic".

Esta instrução é praticamente pau pra toda obra, já que é a base de print das imagens e frases, com ou sem links. Os números dela indicam posição X, posição Y, largura da área, altura da área, nome de uma imagem ou uma frase e o parâmetro seguinte, se existir, será o nome do script que será executado quando ocorrer um clique (ou dedada) nessa área.

O primeiro passo para entrada no jogo implicam em promover a edição das características do jogador e o primeiro input é o do nome dele. Usaremos para isso um script chamado "perfil".

style= font-family:Courier New; font-size:24; font-weight:600;
brd= nojog,50,180,200,30,15,perfil,Seu nome:

Note que o nome informado, instrução "nojog", será colocado no registrador número 15, avisando que o retorno será para mesmo script (perfil).

A seleção da "foto" do personagem depende de alguns procedimentos anteriores: criar pelo menos 6 "fotos", fazer o upload delas para o servidor da sua aventura e em seguida colocar em 6 registradores os nomes de cada um desses arquivos. No caso do Vudugame foi selecionado o registrador 60 para compor o link de seleção da "foto" e os nomes delas estarão nos registradores seguintes (61, 62, 63, 64, 65 e 66).

Veja como é feita a montagem para cada umas das possíveis "fotos":

reg= 60,defimg&Prm=
reg$ 60,#61
brd= tic,010,330,80,100,#61,#60

Note que o link efetivo irá direcionar a execução de retorno para um script chamado "defimg", que nada mais faz do que assumir a imagem selecionada na instrução "defimg", retornando logo após ao script "perfil".

param= 10,prm
if= 10,,script,perfil
brd= defimg,#15,#10
script perfil
fim

O último requisito antes do jogo começar é deixar a opção do jogador colocar uma selfie dele como "foto" do jogador.

brd= getfoto,#15,13
reg$ 13,?r=
reg= 12,0
reg? 12,100
reg$ 13,#12
if# 13,,brd=,tic,010,600,80,100,#13,
brd= getfile,120,600,480,100,15,perfil,Upload,

Uma vez que já exista o arquivo selfie, a instrução "getfoto" prepara o loading da mesma e a instrução "getfile" faz o upload. Só lembrando que o nome do jogador estará no registrador 15 e o arquivo da foto estará no registrador 13.

Um programador mais atento perguntaria: "e aquela programação ninja acontecendo no registrador 12?". Boa pergunta, Fernandinho.

Os navegadores costumam trazer os arquivos gráficos para um cache e assim, na próxima vez que eles forem solicitados, a internet é poupada de um download desnecessário. Isso é uma coisa boa não apenas porque "economiza" banda de transmissão mas principalmente porque torna o processamento da página HTML muito mais rápido.

O problema é que o nome usado pela foto do jogador é sempre o mesmo, ainda que a imagem em si tenha sido trocada. Como o navegador mantém a imagem anterior no cache, com quase 100% de acerto, o que vai acontecer é que, mesmo solicitando a troca, o jogador ainda verá a imagem anterior.

Para contornar isso acrescentamos ao link da foto um parâmetro compucabalístico do tipo "?r=número". Esse número precisa ser aleatório para que o navegador "pense" que se trata de uma imagem nova e forçosamente faça o download dela.