Na convenção utilizada neste trabalho, além do modelo em RPC, é necessário um arquivo de propriedades para a criação de jogos a partir de RPCs. Este arquivo contém o identificador das imagens utilizadas para representar os personagens e os locais e regiões na interface gráfica do jogo. Para isso, utiliza-se um arquivo de texto com a extensão .properties e com o mesmo nome atribuído ao modelo em RPC registrado com a extensão .cpn pelo CPN Tools.
A Figura 38 mostra um exemplo de configuração das imagens usadas para o personagem de player1 (ID = 2) em quatro etapas do jogo. As aparências em cada etapa são indicadas para cada linha usando a nomenclatura nome_do_player.numero_da_etapa (player1.1, player1.2, ...). O exemplo da Figura 38 está configurado de maneira que o personagem possua a mesma aparência em todas as etapas. No lado esquerdo da atribuição, o primeiro parâmetro especifica o diretório que contém as figuras de representação do personagem, que devem ser gravada no formato PNG. Os parâmetros seguintes, separados por vírgula, representam a lista de bônus que o personagem possuirá quando mudar para a referida etapa. Analisando a Figura 38, vê-se que na primeira etapa o player1 não terá nenhum bônus. Na segunda, o personagem possui o objeto do tipo 1, na terceira tem um objeto do tipo 2 e na quarta terá os objetos do tipo 1 e 2. A configuração de objetos será abordada ao final desta Seção.
Figura 38 – Configuração das propriedades de um player no jogo (.properties). Os diversos locais e regiões da interface do jogo são representados pelos lugares da RPC. Durante o parsing do arquivo .cpn que contém a representação em RPC do jogo (CARVALHO et al., 2014), a posição de um lugar no modelo indica a posição relativa em
que será renderizada a imagem utilizada para representar esse local na interface gráfica. No exemplo apresentado na Figura 36, indica-se que as imagens correspondentes aos dois lugares da rede (A e B) devem ser colocados lado a lado, A à esquerda e B à direita, como mostra o resultado apresentado na Figura 37.
Na convenção adotada, os elementos dinâmicos do jogo são representados na RPC pelas fichas. Portanto, uma ficha com identificador de player em um lugar da RPC representa o estado do jogo no qual um personagem encontra-se no local correspondente. Esse é o caso da rede da Figura 36, em que temos a ficha (2, 1) no lugar A, correspondendo à imagem mais acima da Figura 37, em que se pode ver o personagem na casa correspondente. O disparo de transições simula o movimento do jogador, movendo a ficha com identificador de player de um lugar de saída para um lugar de entrada na RPC. No exemplo da Figura 36, em cada lugar, pode-se ver uma ficha com identificador 0. Como discutido precedentemente, fichas desse tipo nunca são removidas, mas podem ter o valor do segundo campo da tupla modificado para representar a mudança de estado e, em consequência, será alterada a aparência do lugar. O disparo da transição T1 move a ficha de player 1 do lugar A para o lugar B e o disparo de T2 move esta mesma ficha no sentido oposto. Desta forma, pela regra modelada, o personagem pode se mover tanto de A para B como de B para A.
Da mesma maneira que se configuram as imagens para os personagens em seus múltiplos estados, devem ser registradas no arquivo de configurações as imagens que representam os diversos estados de cada local do jogo. Utilizando uma representação semelhante à discutida para os players, na Figura 39 é possível observar a definição dos caminhos para o diretório que contém as imagens dos locais do jogo em cada estado possível. Neste exemplo, são configuradas imagens para dois estados de cada local do jogo, indicando em que local a imagem apropriada está localizada, considerando-se cada estado possível. Nestes diretórios devem ser gravadas as figuras representativas dos estados dos lugares no formato PNG. A primeira linha da Figura 39 indica a localização das figuras que representam os estados de valor 1, isto é, as imagens representativas das fichas com valor (0, 1) em cada lugar. Dessa forma, para o modelo apresentado na Figura 36, o diretório indicado deverá ter as imagens A.png e B.png. De maneira análoga, a segunda linha indica a localização das figuras que representam o estado de valor 2 de cada lugar, isto é, a representação das fichas com valor (0, 2). Na RPC da Figura 36, o lugar A possui dois estados possíveis, conforme pode ser visto nas imagens mais acima e mais abaixo da Figura 37.
Figura 39 – Configuração das propriedades dos locais do jogo.
Capítulo 4. Configurações avançadas no CPN Games 53 locais do jogo. Como foi definido na Subseção 4.1.1, as fichas de objetos tem ID igual 1 e seus valores indicam o objeto referenciado. Desta forma, no momento da criação do jogo, definem-se arbitrariamente os valores dos objetos. Por exemplo, o valor 1 para uma bomba e o valor 2 para uma moeda. Portanto, uma ficha (1, 1) indica que há uma bomba no local associado ao lugar que contém esta ficha, da mesma maneira que uma ficha (1, 2) indica a presença de uma moeda. No exemplo da Figura 36, a ficha (1, 1) indica a presença de uma bomba no lugar B. Da mesma maneira que as configurações de lugares, as de objeto também são definidas simplesmente indicando o caminho do diretório que contém as imagens. Para o exemplo da bomba e da moeda, deve-se ter os arquivos objeto1.png e objeto2.png, respectivamente. A Figura 40 mostra como definir tal situação no arquivo de configuração.
Figura 40 – Configuração das propriedades dos objetos.