# O Manual do &skladnik;

## Introdução

O primeiro jogo de sokoban foi criado em 1982 por Hiroyuki Imabayashi na empresa japonesa Thinking Rabbit, Inc. Sokoban significa guardião de armazém em japonês. A ideia é que você seja um guarda de armazém tentando empurrar caixas para seus locais corretos em um armazém.

O problema é que você não pode puxar as caixas nem passar por cima delas. Se você não for cuidadoso, algumas caixas podem ficar presas em lugares errados e/ou bloquear seu caminho.

Pode ser bastante difícil simplesmente resolver um nível. Mas se você quiser torná-lo ainda mais difícil, pode tentar minimizar o número de movimentos e/ou empurrões que você usa para resolver o nível.

Para tornar o jogo mais divertido para crianças pequenas (com menos de 10 anos, aproximadamente), algumas coleções com níveis mais fáceis também estão incluídas no &skladnik;. Elas são marcadas com (fácil) no menu de coleção de níveis. Claro, esses níveis também podem ser divertidos para adultos, por exemplo, se você não quiser se expor a muito esforço mental.

## O Jogo

O objetivo do jogo é empurrar todas as gemas vermelhas para os quadrados de chegada, que são marcados com objetos redondos e brilhantes verdes no chão.

Use as teclas de cursor ou o mouse para se movimentar. Se você se mover em direção a uma gema usando as teclas de cursor ou o &MMB; e não houver nada bloqueando-a do lado oposto, você empurrará a gema. Não é possível puxar as gemas, então, se você empurrar uma gema para um canto, ela ficará presa lá. Você também não pode passar por cima das gemas, então pode ficar preso em uma parte do labirinto bloqueando o caminho com gemas. Observe também que não é possível empurrar mais de uma gema por vez.

Se você perceber que moveu as gemas de uma forma que tornou o nível impossível de resolver, você sempre pode usar a função desfazer para voltar a uma posição onde o erro ainda não foi cometido. Você também pode, é claro, reiniciar o nível desde o início.

### Controles

Tecla | Ação
Teclas de cursor | Move-se uma casa em uma direção
&Ctrl;Teclas do cursor | Move-se o máximo possível em uma direção sem empurrar nenhuma gema
&Shift;Teclas de cursor | Move-se o máximo possível em uma direção, empurrando qualquer gema que estiver no caminho
Botão Esquerdo do mouse | Move-se para qualquer lugar no labirinto que possa ser alcançado sem empurrar nenhuma gema
Botão do Meio do mouse ou &Ctrl;Z | Desfaz o último movimento
Botão Direito do mouse | Move-se para cima/baixo/esquerda/direita em linha reta, empurrando qualquer gema que estiver no caminho
Roda do mouse | Percorre o histórico
&Ctrl;&Shift;Z | Refaz o último movimento desfeito
N | Vai para o próximo nível na coleção de níveis atual
P | Vai para o nível anterior na coleção de níveis atual
&Esc; | Reinicia o nível atual
&Ctrl;Q | Sai do jogo

### Carregando níveis externos

O &skladnik; tem a capacidade de carregar níveis externos de sokoban a partir de arquivos de texto. Você pode carregar níveis usando o item de menu Jogo Carregar níveis… ou especificando o &URL; do arquivo de nível como um argumento de linha de comando ao iniciar o &skladnik; a partir de um terminal.

Os níveis externos devem ser definidos usando os caracteres padrão mostrados na tabela abaixo. Se o arquivo contiver mais de um nível, os níveis devem ser separados por linhas em branco. O arquivo também pode conter texto entre os níveis.

Caractere | Significado
`#` | Muro
(espaço) | Quadrado vazio
`.` | Quadrado objetivo
`$` | Objeto em um quadrado vazio
`*` | Objeto em um quadrado objetivo
`@` | Posição inicial em um quadrado vazio
`+` | Posição inicial em um quadrado objetivo

Como exemplo, abaixo está uma representação textual do primeiro nível na coleção de níveis do Microban:

    ####
    # .#
    #  ###
    #*@  #
    #  $ #
    #  ###
    ####

## Referência do menu

Este é um guia completo dos menus do &skladnik;.

### Menu Jogo

Jogo Carregar níveis…

- Carrega um nível externo. Consulte a seção Carregando níveis externos para obter mais informações.

N Jogo Próximo nível

- Carrega o próximo nível.

P Jogo Nível anterior

- Vai para o nível anterior.

&Esc; Jogo Reiniciar nível

- Reinicia o nível atual.

Jogo Coleção de níveis

- Um submenu para alternar para um conjunto diferente de níveis. O &skladnik; vem com vários conjuntos de níveis, e você pode carregar mais que você pode encontrar na internet.

&Ctrl;Z Jogo Desfazer

- Desfaz o último movimento.

&Ctrl;&Shift;Z Jogo Refazer

- Refaz o último movimento desfeito usando a opção de menu acima.

&Ctrl;Q Jogo Sair

- Sai do &skladnik;.

### Menu Animação

Este menu oferece itens com caixas de seleção que permitem especificar a velocidade com que as animações de repetição de movimento são exibidas.

Animação Lenta

- Mostra animações de reprodução em ritmo lento.

Animação Média

- Esta é a configuração padrão e mostra animações de reprodução em um ritmo ligeiramente mais rápido.

Animação Rápida

- Mostra animações de reprodução em ritmo rápido.

Animação Desligada

- Não anima a reprodução.

### Menu Favoritos

Favoritos Definir favorito

- O &skladnik; permite que você defina marcadores com um nível em um estado específico. Você pode usar isso para evitar repetir as mesmas etapas iniciais em um nível.

  Você pode ter até dez favoritos por vez e acessá-los através do atalho &Ctrl;`X`, onde `X` é qualquer dígito entre 0 e 9.

Favoritos Ir para favorito

- Vai para um estado que você salvou anteriormente como um favorito.

### Menu Ajuda

O &skladnik; tem os itens de menu Ajuda comuns do &kde;. Para mais informações, leia a seção Menu Ajuda dos Fundamentos do &kde;.

## Créditos e licença

O &skladnik; possui direitos autorais © 1998-2000 de &Anders.Widell; &Anders.Widell.mail;.

O gráfico de fundo starfield foi retirado do Gimp. Todos os outros gráficos foram criados por &Anders.Widell; &Anders.Widell.mail; usando o Povray ray tracer.

Todos os níveis de sokoban atualmente incluídos foram criados por David W. Skinner sasquatch@bentonrea.com. Veja a página de sokoban dele.

Tradução de Marcus Gama marcus.gama@kde.org

&underFDL; &underGPL;
&documentation.index;