<?xml version="1.0" ?>
<!--IMPORTANT: please note that 'Do not change this!' notice does not apply to translators -->
<!DOCTYPE book PUBLIC "-//KDE//DTD DocBook XML V4.2-Based Variant V1.1//EN" "dtd/kdex.dtd" [
  <!ENTITY kajongg  "<application
>Kajongg</application
>">
  <!ENTITY kappname "&kajongg;">
  <!ENTITY kappversion "0.4"
><!--Application version. Use this variable everywhere it is needed.-->
  <!ENTITY package "kdegames"
>  <!-- do not change this! -->
  <!ENTITY % Portuguese "INCLUDE"
> <!-- change language only here -->
  <!ENTITY % addindex "IGNORE"
> <!-- do not change this! -->
  <!ENTITY s1 "s1">
  <!ENTITY s9 "s9">
  <!ENTITY b1 "b1">
  <!ENTITY b9 "b9">
  <!ENTITY c1 "c1">
  <!ENTITY c9 "c9">
  <!ENTITY we "we">
  <!ENTITY ws "ws">
  <!ENTITY ww "ww">
  <!ENTITY wn "wn">
  <!ENTITY db "db">
  <!ENTITY dr "dr">
  <!ENTITY dg "dg">
  <!ENTITY chow "chow">
  <!ENTITY pung "pung">
  <!ENTITY kong "kong">
  <!ENTITY mahjongg "mahjongg">
  <!ENTITY originalcall "originalcall">
  <!ENTITY violatesoriginalcall "violatesoriginalcall">
  <!ENTITY dangerousgame "dangerousgame">
  <!ENTITY nochoice "nochoice">
  <!ENTITY payforall "payforall">
  <!ENTITY payers "payers">
  <!ENTITY payees "payees">
  <!ENTITY absolute "absolute">
  <!ENTITY lastsource "lastsource">
]>

<book lang="&language;"
> <!-- do not change this! -->
<bookinfo>
	<title
>Manual do &kappname;</title
> <!-- This is the title of this docbook. -->
<!-- List of immidiate authors begins here. -->
<!--INPORTANT! - All other contributors: [to be determined] -->
<authorgroup>
<author
><personname
> <firstname
>Wolfgang</firstname
> <surname
>Rohdewald</surname
> </personname
> <email
>wolfgang@rohdewald.de</email
> </author>
<othercredit role="translator"
><firstname
>José</firstname
><surname
>Pires</surname
><affiliation
><address
><email
>zepires@gmail.com</email
></address
></affiliation
><contrib
>Tradução</contrib
></othercredit
> 
</authorgroup>


<date
>2010-03-19</date
><!-- Date of (re)writing, or update.-->
<releaseinfo
>&kappversion;</releaseinfo
><!-- Application version number. Use the variable definitions within header to change this value.-->

<!--Short description of this document. Do not change unless necessary!-->
<abstract>
	<para
>Esta documentação descreve o jogo &kappname; na versão &kappversion;</para>
</abstract>

<!--List of relevant keywords-->
<keywordset>
	<keyword
>KDE</keyword
> <!-- do not change this! -->
	<keyword
>kdegames</keyword
> <!-- do not change this! -->
	<keyword
>jogo</keyword
> <!-- do not change this! -->
	<keyword
>kajongg</keyword
><!--Application name goes here-->
<!-- Game genre. Use as many as necessary. Available game types are: Arcade, Board, Card, Dice, Toys, Logic, Strategy.-->
	<keyword
>tabuleiro</keyword>
	<keyword
>arcada</keyword>
	<keyword
>jogo de peças</keyword>
	<keyword
>peças</keyword>
<!--Number of possible players. It can be: One, Two,..., Multiplayer-->
	<keyword
>quatro jogadores</keyword>
<!--All other relevant keywords-->
</keywordset>
</bookinfo>
<!--Content begins here: -->
<chapter id="introduction"
><title
>Introdução</title
> <!-- do not change this! -->
	<note
><title
>Tipo de jogo:</title
><para
>Tabuleiro, Arcada</para
></note
><!-- Game genre. Use as many as necessary. Available game types are: Arcade, Board, Card, Dice, Toys, Logic, Strategy.-->
	<note
><title
>Número de jogadores possíveis:</title
><para
>Quatro</para
></note
><!--Number of possible players. It can be: One, Two,..., Multiplayer-->
	<para
>O &kajongg; é um jogo de tabuleiro criado com base no famoso jogo oriental Mahjong (do Chinês <foreignphrase lang="zh"
>麻將</foreignphrase
>). É jogado por quatro jogadores. Existem diversas regras de jogo disponíveis no mundo inteiro. De momento, o &kajongg; suporta as regras clássicas chinesas, que também são usadas na Alemanha; eventualmente, outros conjuntos de regras irão surgir, sendo possível também a configuração dos mesmos conjuntos. Por favor, faça-o e envie as modificações para o autor do programa, de modo a integrá-las! </para>
	<para
>O &kajongg; pode ser usado de duas formas diferentes: Pontuar um jogo manual, onde poderá jogar como sempre fez e usar o &kajongg; para o cálculo dos pontos e para registo. Por outro lado, poderá usar o &kajongg; para jogar contra qualquer combinação de jogadores humanos ou computorizados. </para>
</chapter>

<chapter id="screen_layout"
><title
>A Disposição do Ecrã</title>
		<para>
			<screenshot>
				<screeninfo
>Uma imagem do &kajongg;</screeninfo>
				<mediaobject>
					<imageobject>
						<imagedata fileref="gamescreen.png" format="PNG"/>
					</imageobject>
					<textobject
><phrase
>Imagem</phrase
></textobject>
				</mediaobject>
			</screenshot>
                </para>
                <para
>Uma explicação rápida dos componentes do ecrã de jogo. </para>
	<variablelist>
		<varlistentry>
			<term
>Barra de Ferramentas</term>
			<listitem
><para
>A barra de ferramentas localiza-se por baixo da barra de menu e contém botões para as acções usadas com maior frequência. O conteúdo da barra de ferramentas poderá ser editado; podê-lo-á tornar invisível também, ganhando mais espaço no tabuleiro. </para
></listitem>
		</varlistentry>
		<varlistentry>
			<term
>Tabuleiro</term>
			<listitem
><para
>O Tabuleiro fica no centro do ecrã e é a maior secção da janela. Poderá ver as quatro paredes com uma extensão de 18 peças (poderá ser configurável, eventualmente). Os nomes dos jogadores estão escritos nas paredes, em conjunto com as suas peças de pontos cardeais. A parede prevalente tem um fundo colorido, que na imagem acima corresponde ao Este. </para
><para
>quando estiver a <link linkend="play"
>jogar</link
>, o interior das paredes contém as peças descartadas pelos jogadores. Estas são colocadas de forma aleatória. A última peça eliminada tem um contorno a azul. </para
><para
>Quando <link linkend="scoreGame"
>estiver a pontuar jogos manuais</link
>, o interior das paredes tem uma selecção com todas as peças disponíveis, o selector central. Podê-las-á atribuir aos jogadores com o rato ou com o teclado. </para>
			</listitem>
		</varlistentry>
		<varlistentry>
			<term
>Região do Jogador</term>
			<listitem
><para
>Todos os jogadores têm um espaço no ecrã para as suas peças. A fila superior contém as peças expostas, enquanto a inferior contém as escondidas. No caso dos <link linkend="scoreGame"
>jogos de pontuação manual</link
>, as peças escondidas são apresentadas com uma sombra sobre a peça inteira. No exemplo, o Klaus tem um 'pong' escondido da pedra 9. As peças de bónus vão para o lado direito. </para
></listitem>
		</varlistentry>
		<varlistentry>
			<term
>Janela</term>
			<listitem
><para
>A janela apresenta as escolhas que o jogador tem. Na maior parte dos casos, tem um tempo-limite com uma barra de progresso que apresenta o tempo que falta. </para
></listitem>
		</varlistentry>
		<varlistentry>
			<term
>Barra de Estado</term>
			<listitem
><para
>A barra de estado localiza-se no fundo do ecrã e contém os totais actuais para os jogadores. </para
></listitem>
		</varlistentry>
	</variablelist>
</chapter>

<chapter id="scoreGame"
><title
>Pontuar um Jogo Manual</title
> <!-- do not change this! -->
	<para
>Neste modo, o &kajongg; só é usado para calcular a pontuação. Joga como de costume, com pessoas reais numa mesa real e, no fim do jogo, poderá dizer ao &kajongg; as peças que um jogador tem na sua mão e toda a informação necessária para calcular a pontuação - que é o que o programa irá fazer. Em alternativa, poderá calcular manualmente os pontos da jogada e introduzi-los. O &kajongg; irá então fazer os pagamentos entre os vários jogadores e guardar os resultados numa base de dados. É possível suspender um jogo, iniciar outro com outros jogadores e prosseguir os jogos antigos. Todas as regras serão gravadas em conjunto com os jogos, de modo que possa jogar diferentes jogos com diferentes regras. </para>
        <itemizedlist>
            <listitem
><para
>A partir do menu, escolha <guimenu
>Jogo</guimenu
> / <guimenuitem
>Jogo de Pontuação Manual</guimenuitem
> ou carregue em <keycombo action="simul"
>&Ctrl;<keycap
>C</keycap
></keycombo
>. </para
></listitem>
            <listitem
><para
>Para um jogo novo, associe os jogadores aos quatro ventos e seleccione o conjunto de regras desejado. O &kajongg; irá propor os mesmos valores que o jogo anterior. Se não existir nenhum jogo anterior, irá propor os primeiros quatro jogadores definidos. Lembre-se que não poderá alterar o conjunto de regras ou algumas destas regras após esta selecção. Se quiser rever ou modificar as regras de um jogo, faça-o de antemão no <link linkend="ruleset-options"
>editor de conjuntos de regras</link
>. </para
></listitem>
            <listitem
><para
>Agora irá obter uma nova janela chamada "Indique os resultados da jogada". Veja em <link linkend="enterhand-tiles"
>Ter o &kajongg; a calcular a pontuação</link
> para obter uma descrição mais detalhada. </para
></listitem>
            <listitem
><para
>Depois de gravar os resultados da jogada, continue com a jogada seguinte. </para
></listitem>
        </itemizedlist>
      <sect1 id="enterhand"
><title
>Introduzir os resultados da jogada.</title>
        <sect2 id="enterhand-scores">
	<title
>Pontuações</title>
	<screenshot>
		<screeninfo
>Uma imagem do &kajongg;</screeninfo>
		<mediaobject>
			<imageobject>
				<imagedata fileref="enterhand.png" format="PNG"/>
			</imageobject
>				<textobject
><phrase
>Imagem</phrase
></textobject>
		</mediaobject>
	</screenshot>
	<para
>Esta é a janela para introduzir os resultados da jogada. Aparece automaticamente quando o &kajongg; pensa que poderá necessitar dela. Podê-la-á mostrar ou esconder sempre com a combinação de teclas <keycombo action="simul"
>&Ctrl;<keycap
>S</keycap
></keycombo
> ou seleccionando o item de menu correspondentes. </para>
	<para
>Como sempre, o vento prevalente tem o seu fundo colorido. </para>
	<para
>Aqui poderá introduzir manualmente as pontuações para todos os jogadores. Em alternativa, poderá definir exactamente as peças que um jogador tinha na sua mão. Se optar por fazê-lo, o campo correspondente para o valor da pontuação manual ficará desactivado, dado que o &kajongg; irá calcular automaticamente a pontuação. </para>
	<para
>Depois de ter introduzido todos os dados relevantes para uma ronda, carregue no botão <guibutton
>Gravar a ronda</guibutton
>. Os valores serão introduzidos na base de dados, sendo também inseridos na tabela de pontuações. Poderá ser questionado para mudar as posições dos jogadores, mas também pode optar por não mudar os lugares. As alterações propostas não podem ser personalizadas de momento - se um conjunto de regras necessitar de algo diferente, isso poderá ser alterado. </para>
	<para
>Se o jogador tiver ganho, a opção na coluna "Vencedor" ficará activa - carregue nesta para o vencedor. </para>
	<para
>A barra de estado irá mostrar agora os balanços para os jogadores, pelo que poderá depois prosseguir com a ronda seguinte. </para>
	<sect3 id="enterhand-manually">
	<title
>Introduzir a pontuação manualmente</title>
	<para
>Um bom jogador irá provavelmente preferir calcular a sua própria pontuação. Nesse caso, podê-la-á introduzir directamente. Isto só é possível, desde que não tenha seleccionado nenhumas peças para este jogador. </para>
	<para
>Se introduzir uma pontuação manual, já deverá conter tudo excepto as penalidades, não tendo regras opcionais por onde escolher. Existe uma excepção, o "Jogo Perigoso". Isto não influencia nenhumas pontuações, assim como também é nenhuma ofensa. Significa apenas que o pagamento entre os jogadores é diferente: a pessoa ofensiva paga tudo por todos ao vencedor. Os outros dois jogadores não efectuam pagamentos entre si. Isto não é possível personalizar neste momento. </para>
	</sect3>
	<sect3 id="enterhand-tiles">
	<title
>Deixar o &kajongg; calcular a pontuação</title>
	<para
>Se disser explicitamente ao &kajongg; as peças que um jogador apresenta, a introdução das pontuações ficará desactivada para esse jogador nesta janela. Enquanto associa as peças a um jogador, irá ver como a pontuação dele irá aumentar - contudo, assim que adicionar a 14ª peça, a pontuação vai a zero. Isso podê-lo-á surpreender mas, a menos que declare esta como sendo a jogada do vencedor, será reconhecida como uma jogada extensa, que terá sempre zero pontos. Este comportamento é definido pelo conjunto de regras chinesas clássicas, podendo ser diferente se usar um conjunto de regras diferente. </para>
	<para
>Poderá associar as peças e as combinações com um jogador, usando o rato, o teclado ou ambos. Atribua opcionalmente as peças aos jogadores, arrastando e largando-as no espaço do jogador. Ao largar a peça, ser-lhe-á questionado o que deseja mover: Simples, Par, Pung, Kong, Kong Pedido ou Chow. A fila superior serve para as peças expostas, enquanto a inferior serve para as escondidas. As peças de bónus irão aparecer no lado direito. Poderá também mover as peças entre filas, entre jogadores e para o selector central. </para>
	<para
>Se preferir usar o teclado, poderá usar o &Tab; para mudar entre o selector central e as rondas dos jogadores. As teclas <keycap
>ESWN</keycap
> movem uma peça dos jogadores a Este, Sul, Oeste e Norte. A tecla <keycap
>xX</keycap
> repõe a peça de volta no selector central. O <keycap
>ESWN</keycap
> vai para o grupo escondido, enquanto o <keycap
>eswn</keycap
> vai para o grupo visível. Poderá mover o cursor entre as peças ou as combinações, usando as teclas de cursores, em que a peça ou combinação actual terão uma moldura azul. Dado que as teclas dos cursores estão distantes das letras no teclado, poderá também usar as teclas <keycap
>hjkl</keycap
> ou <keycap
>HJKL</keycap
> para mover o cursor. O <keycap
>hH</keycap
> move para a esquerda, o <keycap
>jJ</keycap
> para baixo, o <keycap
>kK</keycap
> para cima e o <keycap
>lL</keycap
> para a direita. Assim é como funciona o editor de Unix "vi". Estas teclas poderão ser diferentes de usar uma língua diferente do Inglês, mas não é possível de momento configurá-las. </para>
	<para
>As opções "Última Peça" e "Última Combinação" são necessárias por algumas regras, como a "última peça completa o par". Só podem ser usadas na jogada do vencedor. </para>
	<para
>Do lado direito, poderá aplicar manualmente algumas regras. As regras que aparecem nesta lista dependem do conjunto de regras actual e das peças. No exemplo da imagem acima, os jogadores perdedores poderão ter uma opção de "jogo perigoso" - que depende mais uma vez do conjunto de regras e das suas peças. O objectivo dos programadores é manter esta lista de regras a mais curta possível. Optimamente, o &kajongg; deverá ser sempre capaz de determinar automaticamente se uma regra se aplica, mas em alguns casos o &kajongg; não tem informação suficiente ou não é inteligente o suficiente para o decidir. </para>
	</sect3>
	</sect2>
	<sect2 id="enterhand-penalties">
	<title
>Penalidades</title>
			<screenshot>
				<screeninfo
>Uma imagem do &kajongg;</screeninfo>
				<mediaobject>
					<imageobject>
						<imagedata fileref="penalty.png" format="PNG"/>
					</imageobject>
					<textobject
><phrase
>Imagem</phrase
></textobject>
				</mediaobject>
			</screenshot>
	<para
>Na <link linkend="enterhand"
>janela para introduzir os resultados da jogada</link
>, o botão de <guibutton
>Penalidades</guibutton
> irá invocar esta janela, na qual poderá introduzir as mesmas penalidades. Isto poderá ser feito em qualquer altura do tempo, independentemente do mecanismo de pontuação normal.</para>
	<para
>A lista <guilabel
>ofensa</guilabel
> mostra todas as ofensas que poderão ser aplicadas às jogadas que os jogadores efectuaram. Escolha uma entre elas.</para>
	<para
>Agora, poderá adaptar a <guilabel
>Penalidade Total</guilabel
>. Esta é a soma total que é movida entre devedores e credores. Poderá ser dividida por igual entre eles.</para>
	<para
>Dependendo do tipo de ofensa, o número de credores e devedores varia. O número correcto de listas é apresentado. Se escolher um jogador, o &kajongg; garante que este jogador só ocorre uma vez, alterando os outros jogadores. </para>
	</sect2>
	</sect1>
</chapter>

<chapter  id="play"
><title
>A reproduzir</title>
        <sect1 id="robotplay">
        <title
>Jogar contra o computador</title>
         <para
>Em primeiro lugar, irá obter uma janela de autenticação. Indique o servidor do jogo a que se deseja ligar, bem como o seu nome de utilizador. Se escolher o item especial "Jogo Local", só terá de indicar o seu nome (ou aceitar o proposto) e o conjunto de regras desejado. Isto irá iniciar automaticamente um jogo local onde poderá jogar contra 3 jogadores por computador. </para>
        </sect1>
        <sect1 id="humanplay">
        <title
>Jogar com amigos</title>
        <para
>Se quiser jogar contra outras pessoas reais, irá necessitar de um servidor do jogo onde todos os jogadores, incluindo você mesmo, se terão de ligar. Faça-o, seleccionando outra máquina qualquer ou introduzindo manualmente o nome de uma nova máquina e indicando a sua senha para essa máquina. Será proposta a última senha usada. </para
><para
>Se não tiver uma conta nesse servidor com o nome que introduziu, ser-lhe-á questionado se deseja abrir uma conta. Caso responda afirmativamente, irá obter uma nova janela onde poderá introduzir duas vezes a senha desejada. A sua conta será criada automaticamente. </para
><para
>Depois de se autenticar com sucesso no servidor de jogos, irá obter uma lista das mesas com lugares disponíveis nesse servidor de jogos. Junte-se a uma mesa ou crie uma nova. Se criar uma nova, espere até que os outros lugares sejam ocupados por jogadores. Poderá iniciar o jogo numa mesa que tenha reservado em qualquer altura, sendo que os lugares não ocupados serão ocupados por jogadores computorizados. </para
><para
>A lista de mesas também mostra o nome do conjunto de regras jogado por essa tabela. O conjunto de regras e o seu nome são enviados para o servidor de jogos que inicia a mesa. Se tiver um conjunto de regras idêntico, a mesa mostra o seu nome para o conjunto de regras - isto poderá ser útil se a pessoa que iniciou a mesa fala outra língua, tendo dado outro nome ao conjunto de regras. Do mesmo modo, caso o nome do seu conjunto de regras local apareça, será apresentado a preto. Se porventura não tiver nenhum conjunto de regras idêntico, o nome aparece a vermelho, onde nesse caso poderá usar o botão <guibutton
>Comparar</guibutton
> para o comparar com os seus próprios conjuntos de regras. </para
><para
>Poderá iniciar o servidor de jogos do Kajongg de duas diferentes formas: <itemizedlist
><listitem
><para
>ligue-se ao servidor "localhost". Este é o seu próprio computador. Se o fizer, e caso não tenha nenhum servidor a correr, este será iniciado automaticamente. Quando parar de jogar, o servidor será também interrompido. </para
></listitem
><listitem
><para
>inicie manualmente um servidor em qualquer computador que desejar. Tudo o que precisa é ir a uma linha de comandos e iniciar o programa "kajonggserver". Se indicar "kajonggserver --help", apresentar-lhe-á todas as opções disponíveis, como a alteração do porto predefinido, que é o 8149. Este servidor irá executar até que o termine. </para
></listitem
></itemizedlist>
        </para
><para
>Em ambos os casos, terá de dizer aos outros jogadores como aceder ao seu servidor de jogos. Eles irão necessitar do URL, ou apenas do endereço IP e porto onde tem o seu servidor à espera de ligações. Poderá ser algo do tipo "meu-pc.dyndns.org:8149" onde o 8149 é o porto. Obviamente, terá de configurar a sua 'firewall', para que o jogador remoto se consiga ligar a esse porto. A comunicação será encriptada. </para
><para
>Se encontrar possíveis erros, poderá querer usar a opção "--showtraffic". Esta mostrar-lhe-á, na consola em que o servidor foi iniciado, as mensagens que seguem entre o servidor do jogo e os clientes. </para>
        <sect2 id="playing-caveats">
        <title
>Notas Importantes</title>
            <itemizedlist
><listitem
><para
>Se quiser ter a certeza de que ninguém fará batota, nenhum dos jogadores humanos deverá ter acesso ao computador onde está o servidor em execução. Obviamente, não poderá nunca evitar que dois jogadores se ajudem um ao outro, porque não pode saber o que realmente estão a fazer. Esses dois jogadores até poderão ser uma e a mesma pessoa. </para
></listitem
></itemizedlist>
        </sect2>
        </sect1>
        <sect1 id="playing-play">
        <title
>Como jogar</title>
        <para
>Ser-lhe-á questionado o que deseja fazer. Esta é uma pequena janela que poderá mover para onde quiser - a seguinte irá aparecer no mesmo sítio. Algumas janelas terão um tempo-limite - quando este expirar, a primeira resposta possível fica seleccionada automaticamente para si. Este tempo-limite é configurado no Editor de Conjuntos de Regras, em <guilabel
>Opções</guilabel
>, <guilabel
>Tempo-Limite do Pedido</guilabel
>. Todos os jogadores deverão ter o mesmo tempo-limite, o que explica porque isto faz parte do conjunto de regras. </para
><para
>Se precisar de seleccionar uma peça da sua jogada, poderá circular pelas peças com as teclas de cursor para a esquerda ou direita, ou então com as teclas 'h' e 'l', respectivamente. Obviamente, poderá usar também o menu. </para
><para
>Muitas das vezes, as janelas irão oferecer opções que não se aplicam de facto, como invocar um Pung quando não tem as peças necessárias. Isso é o desejado - como acontece num jogo real. </para
><para
>As peças descartadas são colocadas aleatoriamente entre as paredes. Algumas variantes do jogo definem onde deverão ser colocadas as peças, mas isso ainda não é configurável. Quando for, fará parte do conjunto de regras. </para>
	</sect1>
</chapter>


<chapter id="interface"
><title
>Apresentação à Interface</title
> <!-- do not change this! -->
<!-- This section has to do with menubar. Describe every single entry in order. Use <variablelist
> and <varlistentry
>. Split the chapter into sections using <sect1(2,3)
> for better viewing.-->

 <sect1 id="game-menu">
	<title
>O Menu <guimenu
>Jogo</guimenu
></title>
		<variablelist>
			<varlistentry id="game-menu-scoreGame">
				<term
><menuchoice
><guimenu
>Jogo</guimenu
> <guimenuitem
>Jogo de Pontuações Manuais</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Só pontuar um jogo executado manualmente.</action
></para
><para
>Poderá carregar um jogo antigo ou iniciar um novo. Por omissão, só os jogos pendentes (i.e., não terminados) aparecem na lista de selecção. Poderá mostrar opcionalmente todos os jogos, incluindo os terminados. Aqui poderá também apagar os jogos.</para
></listitem>
			</varlistentry>
                        <varlistentry  id="game-menu-play">
                                <term
><menuchoice
><guimenu
>Jogo</guimenu
> <guimenuitem
>Jogar</guimenuitem
> </menuchoice
></term>
                                <listitem
><para
><action
>Jogar com outros jogadores (humanos ou computorizados)</action
></para
></listitem>
                        </varlistentry>
                        <varlistentry  id="game-menu-abort">
                                <term
><menuchoice
><guimenu
>Jogo</guimenu
> <guimenuitem
>Interromper</guimenuitem
> </menuchoice
></term>
                                <listitem
><para
><action
>Interrompe o jogo actual. Se foi um jogo manual apenas com pontuações, podê-lo-á prosseguir mais tarde. Se jogou com recurso ao &kajongg;, o jogo ainda não pode ser continuado.</action
></para
></listitem>
                        </varlistentry>
			<varlistentry>
				<term
><menuchoice
><guimenu
>Jogo</guimenu
> <guimenuitem
>Sair</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Sai</action
> do &kappname;.</para
></listitem>
			</varlistentry>
		</variablelist>
</sect1>
<sect1 id="view-menu">
	<title
>O Menu <guimenu
>Ver</guimenu
></title>
		<variablelist>
                        <varlistentry id="view-scoring">
                                <term
><menuchoice
><guimenu
>Ver</guimenu
> <guimenuitem
>Pontuação</guimenuitem
> </menuchoice
></term>
                                <listitem
><para
><action
>Janela de Pontuações</action
>: Mostra ou esconde a janela de pontuações. Esta janela está explicada <link linkend="enterhand"
>aqui</link
>. </para
></listitem>
                        </varlistentry>
                        <varlistentry id="view-scoretable">
                                <term
><menuchoice
><guimenu
>Ver</guimenu
> <guimenuitem
>Tabela de Pontuações</guimenuitem
> </menuchoice
></term>
                                <listitem
><para
><action
>Tabela de Pontuações</action
> <screenshot
> <screeninfo
>Tabela de Pontuações</screeninfo
> <mediaobject
> <imageobject
> <imagedata fileref="scoretable.png" format="PNG"/> </imageobject
> <textobject
> <phrase
>Imagem</phrase
> </textobject
> </mediaobject
> </screenshot
> Mostra a tabela de pontuações. A coluna mais esquerda, com os valores E,S,O,N mostra o ponto cardeal do jogador. A coluna ∆ mostra quanto o jogador ganhou ou perdeu nesta ronda. A coluna ∑ mostra o balanço total. As dicas dão-lhe mais detalhes: Mostram todas as regras que foram aplicadas a esta jogada.</para
><para
>A parte inferior mostra o conjunto de regras usado. Entre a tabela de pontuações e a última regra usada, poderá encontrar uma divisória que lhe permite mudar os tamanhos relativos de ambas as partes. </para
></listitem>
                        </varlistentry>
			<varlistentry id="view-explain-scores">
				<term
><menuchoice
><guimenu
>Ver</guimenu
> <guimenuitem
>Explicar as Pontuações</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Explicar as Pontuações</action
> <screenshot
> <screeninfo
>Tabela de Pontuações</screeninfo
> <mediaobject
> <imageobject
> <imagedata fileref="explain.png" format="PNG"/> </imageobject
> <textobject
> <phrase
>Tabela de Pontuações</phrase
> </textobject
> </mediaobject
> </screenshot
> Explica como foi calculada a pontuação para a ronda actual. </para
></listitem>
			</varlistentry>
		</variablelist>
</sect1>
<sect1 id="settings-menu">
	<title
>O Menu <guimenu
>Configuração</guimenu
></title>
		<variablelist>
			<varlistentry>
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Jogadores</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Adicione, modifique e apague jogadores.</action
></para
></listitem>
			</varlistentry>
			<varlistentry>
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Mudar o Ângulo Visual</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Altera o ângulo de visualização das peças no sentido anti-horário.</action
></para
></listitem>
			</varlistentry>
			<varlistentry>
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Modo de Ecrã Completo</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Muda entre o modo de ecrã completo e o modo normal.</action
></para
></listitem>
			</varlistentry>
			<varlistentry>
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Mostrar a Barra de Ferramentas</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Mostra ou esconde a barra de ferramentas.</action
></para
></listitem>
			</varlistentry>
			<varlistentry id="settings-menu-statusbar">
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Mostrar a Barra de Estado</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Mostra ou esconde a barra de estado.</action
></para
></listitem>
			</varlistentry>
			<varlistentry id="settings-menu-shortcuts">
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Configurar os Atalhos...</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Mostra uma janela normal de configuração de atalhos do &kde;</action
> para mudar os <link linkend="default-keybindings"
>atalhos do teclado</link
> do &kappname;.</para
></listitem>
			</varlistentry>
			<varlistentry id="settings-menu-toolbar">
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Configurar as Barras de Ferramentas...</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Mostra uma janela normal do &kde; onde poderá configurar os ícones da barra de ferramentas.</action
></para
></listitem>
			</varlistentry>
			<varlistentry id="settings-menu-settings">
				<term
><menuchoice
><guimenu
>Configuração</guimenu
> <guimenuitem
>Configurar o &kappname;...</guimenuitem
> </menuchoice
></term>
				<listitem
><para
><action
>Abre uma <link linkend="configuration"
>janela de configuração</link
> para o &kappname;.</action
></para
></listitem>
			</varlistentry>
		</variablelist>
</sect1>
 <sect1 id="help"
><!--This is a standard Help menubar entry. Only change if needed.-->
<title
>O Menu <guimenu
>Ajuda</guimenu
></title>
&help.menu.documentation; </sect1>
</chapter>

<chapter id="configuration"
><title
>Configuração do Jogo</title
> <!-- do not change this! -->
<!--This section describes configuration &GUI;. If your game is configured using menubar exclusively, please remove this section.-->
<screenshot>
<screeninfo
>Janela de Configuração</screeninfo>
	<mediaobject>
	  <imageobject>
	    <imagedata fileref="config_play.png" format="PNG"/>
	  </imageobject>
	  <textobject>
	    <phrase
>Janela de Configuração</phrase>
	  </textobject>
	</mediaobject>
</screenshot>

<para
>A opção de menu <menuchoice
><guimenu
>Configuração</guimenu
><guimenuitem
>Configurar o &kappname;...</guimenuitem
></menuchoice
> abre a janela para <guilabel
>Configurar o &kappname;</guilabel
>.</para>
<para
>Se carregar no botão <guibutton
>Cancelar</guibutton
> aqui, todas as suas alterações de configuração serão repostas, incluindo tudo o que fez com o editor de conjuntos de regras.</para>
<para
>Poderá também seleccionar as diferentes páginas com o teclado: o <keycombo action="simul"
>&Ctrl;<keycap
>1</keycap
></keycombo
> selecciona a primeira página com as opções para <guilabel
>Jogar</guilabel
>, o <keycombo action="simul"
>&Ctrl;<keycap
>2</keycap
></keycombo
> selecciona a segunda página, e assim por diante. </para>

<sect1 id="play-options"
><title
>Opções de <guilabel
>reprodução</guilabel
></title>
		<variablelist>
			<varlistentry>
				<term>
					<guilabel
>Mostrar as sombras das peças</guilabel>
				</term>
				<listitem
><para
>Isto mostra as peças com contornos e sombras. Também existe algum espaço entre as filas de peças, sendo as peças das paredes apresentadas de forma que perceba que a parede tem duas ou três peças de altura. Por isso, se desactivar esta opção, terá uma apresentação mais simples, com peças ligeiramente maiores. Isto pode ser útil para ecrãs pequenos. </para
></listitem>
			</varlistentry>
			<varlistentry>
				<term>
					<guilabel
>Reorganizar as peças escondidas em combinações</guilabel>
				</term>
				<listitem
><para
>Esta opção agrupa as combinações que um dado jogador possui. Em alguns casos, o agrupamento não será o que deseja, pelo que poderá preferir não ter qualquer agrupamento, tal como aconteceria num jogo real. </para
></listitem>
			</varlistentry>
			<varlistentry>
				<term>
					<guilabel
>Usar os sons se possível</guilabel>
				</term>
				<listitem
><para
>Permite-lhe ouvir as eliminações e pedidos. Se os outros jogadores gravaram ficheiros de sons com a sua própria voz, podê-los-á ouvir assim. </para
></listitem>
			</varlistentry>
			<varlistentry>
				<term>
					<guilabel
>Deixar os outros ouvirem a minha voz</guilabel>
				</term>
				<listitem
><para
>Se gravou ficheiros de som com a sua voz, esta opção permitirá aos outros jogadores ouvirem as suas eliminações e pedidos com a sua voz. </para
></listitem>
			</varlistentry>
		</variablelist>

	<sect2
><title
>Som</title>
	<para
>É possível gravar ficheiros de som para os seus pedidos, os quais serão escutados pelos outros jogadores. É necessário todavia algum trabalho manual: </para>
            <itemizedlist
><listitem
><para
>Primeiro, terá de descobrir onde guardar os ficheiros com a sua voz. Normalmente, esta pasta é a '~/.kde/share/apps/kajongg'. Por isso, se o seu nome de utilizador for 'ze', poderá ser algo do tipo /home/ze/.kde/share/apps/kajongg. Aí dentro, irá encontrar a base de dados 'kajongg.db'. </para
></listitem
><listitem
><para
>Na pasta que encontrou, crie uma nova sub-pasta chamada <filename class="directory"
>voices</filename
>. </para
></listitem
><listitem
><para
>Na pasta  <filename class="directory"
>voices</filename
>, crie outra sub-pasta com o nome do seu jogador. Este é o nome que usa ao ligar-se a um servidor de jogos. Poderá também querer definir vozes para os jogadores <filename
>ROBOT 1</filename
>, <filename
>ROBOT 2</filename
>, <filename
>ROBOT 3</filename
>. </para
></listitem
><listitem
><para
>Nessa sub-pasta, poderá colocar os ficheiros de som. Terão de ser codificados com a compressão de áudio <ulink url="http://xiph.org/vorbis/"
>Ogg Vorbis</ulink
>, devendo os nomes dos ficheiros ter a extensão <filename class="extension"
>.ogg</filename
>. </para
></listitem
><listitem
><para
>Um ficheiro único tem um nome do tipo <filename
>s3.ogg</filename
> - esta é a Pedra 3. Poderá definir esses ficheiros para todas as peças, bem como para todos os pedidos e anúncios. </para
></listitem
></itemizedlist>
            <para
>Certifique-se que a duração do som é curta mas emitida de forma clara - este jogo poderá ser jogado de forma muito rápida quando se habituar a ele. É mais fácil se escrever primeiro uma lista com tudo o que deseja falar. Não o leia como uma sequência de itens; tente pronunciar cada um deles como se fosse o único, ao jogar. A leitura disto necessita de alguma prática.</para>
            <para
>Esta é apenas uma possibilidade para criar os ficheiros de som: </para
><para
><itemizedlist
><listitem
><para
>Grave um ficheiro de som com o programa <command
>qarecord</command
> e grave-o no formato <literal
>WAV</literal
>. Neste ficheiro de som único, emita logo todos os sons desejados. </para
></listitem
><listitem
><para
>Edite esse ficheiro com o editor de sons <command
>audacity</command
>. Nesse editor, use o rato para marcar um intervalo nas ondas sonoras. O editor irá reproduzir apenas essa parte. Repita o procedimento até ter seleccionado a parte correcta. Isto será mais fácil se usar a opção <menuchoice
><guimenu
>Ver</guimenu
><guimenuitem
>Ampliar</guimenuitem
></menuchoice
>. Use a opção <menuchoice
><guimenu
>Ficheiro</guimenu
><guimenuitem
>Exportar a Selecção</guimenuitem
></menuchoice
>  e grave no formato OGG. Nas <guilabel
>Opções</guilabel
>, escolha a qualidade baixa - esta é suficiente e, de certa forma, até desejável, porque reduz o tempo de transferência para os outros jogadores. </para
></listitem
></itemizedlist
></para>
            <para
>Estes são os nomes que deverá definir. Adicione sempre o <filename
>.ogg</filename
> a eles:</para>

<table>
<title
>Nomes dos ficheiros de som</title>
<tgroup cols="2">
<tbody>
<row>
<entry
>&s1; .. &s9;</entry
><entry
>Pedra 1 a Pedra 9</entry>
</row>
<row>
<entry
>&b1; .. &b9;</entry>
<entry
>Bambu 1 a Bambu 9</entry>
</row>
<row>
<entry
>&c1; .. &c9;</entry>
<entry
>Carácter 1 a Carácter 9</entry>
</row>
<row>
<entry
>&we; &ws; &ww; &wn;</entry>
<entry
>Os ventos de Este, Sul, Oeste e Norte</entry>
</row>
<row>
<entry
>&db; &dr; &dg;</entry>
<entry
>Os dragões azul/branco, vermelho, verde</entry>
</row>
<row>
<entry
>&chow; &pung; &kong; &mahjongg;</entry>
<entry
>Os pedidos principais</entry>
</row>
<row>
<entry
>&originalcall; &violatesoriginalcall;</entry>
<entry
>Pedido do original e a sua violação</entry>
</row>
<row>
<entry
>&dangerousgame;</entry>
<entry
>Um jogador deixou um canhão (jogo perigoso)</entry>
</row>
<row>
<entry
>&nochoice;</entry>
<entry
>Um jogador declara que não tem outra opção, a não ser fazer um jogo perigoso</entry>
</row>
</tbody>
</tgroup>
</table>
	</sect2>
</sect1>

<sect1 id="tiles-options"
><title
>Opções das <guilabel
>Peças</guilabel
></title>
        <screenshot>
                <screeninfo
>Editor de conjuntos de peças</screeninfo>
                <mediaobject>
                        <imageobject>
                                <imagedata fileref="config_tiles.png" format="PNG"/>
                        </imageobject>
                        <textobject
><phrase
>Editor de conjuntos de peças</phrase
></textobject>
                </mediaobject>
        </screenshot>
	<para
>Usar o selector de <guilabel
>Peças</guilabel
> para escolher os gráficos para as peças. </para>
</sect1>

<sect1 id="background-options"
><title
>Opções do <guilabel
>Fundo</guilabel
></title>
        <screenshot>
                <screeninfo
>Selector do fundo</screeninfo>
                <mediaobject>
                        <imageobject>
                                <imagedata fileref="config_background.png" format="PNG"/>
                        </imageobject>
                        <textobject
><phrase
>Selector do fundo</phrase
></textobject>
                </mediaobject>
        </screenshot>
	<para
>Usar o selector do <guilabel
>Fundo</guilabel
> para escolher uma imagem de fundo para o jogo. </para
><para
>Alguns fundos, como a Paisagem Chinesa, levam algum tempo a carregar. Se achar que o programa deva iniciar mais depressa ou se o dimensionamento da janela leva muito tempo, poderá tentar outro fundo qualquer. </para>
</sect1>

<sect1 id="ruleset-options"
><title
>Editor de Conjuntos de Regras</title>
			<screenshot>
				<screeninfo
>Editor de Conjuntos de Regras</screeninfo>
				<mediaobject>
					<imageobject>
						<imagedata fileref="ruleseteditor.png" format="PNG"/>
					</imageobject>
					<textobject
><phrase
>Editor de Conjuntos de Regras</phrase
></textobject>
				</mediaobject>
			</screenshot>
			<para
>Use o Editor de Conjuntos de Regras para personalizar as mesmas. Os conjuntos de regras predefinidos aparecem a itálico, enquanto os personalizados aparecem com um tipo de letra normal. Os conjuntos predefinidos não poderão ser alterados de forma alguma. Uma actualização do &kajongg; podê-las-á alterar. Os conjuntos de regras personalizados não serão alterados por nenhuma actualização. </para
><para
>Ao iniciar um jogo novo, poderá escolher um conjunto de regras para esse jogo. Todos os conjuntos de regras definidos no editor de conjuntos de regas poderão ser usados. O conjunto de regras é gravado em conjunto com o jogo, pelo que poderá alterar sempre os conjuntos de regras aqui - as suas alterações só irão afectar os jogos futuros. </para>
			<sect2
><title
>Regra, Pontuação e Unidade</title
><para
>Basta fazer duplo-click sobre o item a alterar.</para>
			</sect2>
			<sect2
><title
>Definição</title
><para
>A definição de uma regra poderá ser relativamente complexa, pelo que existe um capítulo separado para este efeito, o <link linkend="rule"
>Definir uma Regra</link
>. Não terá normalmente de alterar uma definição. Isto define essencialmente as jogadas em que a regra se aplica.</para>
			</sect2>
			<sect2
><title
>Copiar e Remover</title
><para
>Poderá copiar regras individuais dentro de um conjunto ou conjuntos de regras inteiros. Dado que os conjuntos predefinidos são imutáveis, as regras individuais só poderão ser copiadas para dentro de conjuntos de regras personalizados. </para
><para
>Poderá remover conjuntos inteiros ou regras individuais dentro dos conjuntos. Mais uma vez, isto até poderá ser feito se os jogos existentes usarem este conjunto, dado que cada jogo tem a sua própria cópia do conjunto de regras. Poderá ver os conjuntos de regras dos jogos antigos: <link linkend="game-menu-scoreGame"
>Carregue</link
> o jogo antigo e <link linkend="view-menu"
>mostre a sua tabela de pontuações</link
>. </para>
			</sect2>
			<sect2
><title
>Comparar</title
><para>
			<screenshot>
				<screeninfo
>Comparador de Conjuntos de Regras</screeninfo>
				<mediaobject>
					<imageobject>
						<imagedata fileref="differ.png" format="PNG"/>
					</imageobject>
					<textobject
><phrase
>Comparador de Conjuntos de Regras</phrase
></textobject>
				</mediaobject>
			</screenshot>
Poderá seleccionar este comando quando seleccionar um conjunto de regras inteiro. Permite-lhe comparar o conjunto de regras seleccionado contra qualquer outro conjunto de regras. </para
></sect2>
</sect1>

<sect1 id="default-keybindings">
<title
>Atalhos de Teclado por Omissão</title>

<para
>A opção de menu <menuchoice
><guimenu
>Configuração</guimenu
><guimenuitem
>Configurar os Atalhos...</guimenuitem
></menuchoice
> permite-lhe modificar os atalhos de teclado por omissão.</para>

<para
>As combinações de teclas por omissão são as seguintes: </para>

<para>
<variablelist>

<varlistentry>
<term
><keycap
>F1</keycap
></term>
<listitem>
<para
>Mostra este manual. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Ctrl;<keycap
>C</keycap
></keycombo
></term>
<listitem>
<para
>Pontua um jogo manual. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Ctrl;<keycap
>N</keycap
></keycombo
></term>
<listitem>
<para
>Joga um jogo com outros amigos ou jogadores computorizados. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Ctrl;<keycap
>W</keycap
></keycombo
></term>
<listitem>
<para
>Interrompe o jogo actual. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Ctrl;<keycap
>Q</keycap
></keycombo
></term>
<listitem>
<para
>Sai do programa. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Ctrl;<keycap
>T</keycap
></keycombo
></term>
<listitem>
<para
>Mostra a tabela de pontuações. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Ctrl;<keycap
>G</keycap
></keycombo
></term>
<listitem>
<para
>Muda o ângulo de visualização. </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Shift;<keycap
>F1</keycap
></keycombo
></term>
<listitem>
<para
>Ajuda O Que É Isto? </para>
</listitem>
</varlistentry>

<varlistentry>
<term
><keycombo action="simul"
>&Ctrl;&Shift;<keycap
>F</keycap
></keycombo
></term>
<listitem>
<para
>Modo de Ecrã Completo </para>
</listitem>
</varlistentry>

</variablelist>
</para>

</sect1>
</chapter>

<chapter id="rule"
><title
>Definir uma Regra</title>
<para
>O motor de pontuações e muitos outros aspectos do &kajongg; poderão ser personalizados com o editor de conjuntos de regras. Uma regra consiste num nome, numa pontuação (incluindo a sua unidade) e uma <link linkend="ruledefinition"
>definição</link
>. </para>
        <sect1 id="rulegroups">
        <title
>Grupos de Regras</title>
        <para
>Existem diversos grupos de regras:</para>
        <variablelist>
                <varlistentry>
                        <term
>Regras das Combinações</term>
                        <listitem
><para
>As regras de combinações são aplicadas às combinações individuais, independentemente do resto da jogada. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Regras da Jogada</term>
                        <listitem
><para
>As regras da jogada aplicam-se à jogada toda, incluindo todos os jogadores. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Regras do Mah Jongg</term>
                        <listitem
><para
>As regras do Mah Jongg definem como deverá ser composta uma ronda vencedora. Normalmente são quatro combinações, com 3 ou 4 peças cada uma, e um par. Mas poderão existir outras rondas especiais e diferentes, como os 13 Órfãos no Chinês Clássico. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Regras do Vencedor</term>
                        <listitem
><para
>As regras do vencedor aplicam-se à jogada inteira, mas apenas ao vencedor. Isto inclui a maioria das rondas especiais. Essas regras não têm de aplicar o número correcto de peças. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Opções</term>
                        <listitem
><para
>Aqui poderá encontrar alguns parâmetros especiais, como os pontos para uma jogada limitada. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Penalidades</term>
                        <listitem
><para
>As penalidades são aplicadas manualmente pelo utilizador. </para
></listitem>
                </varlistentry>
        </variablelist>
        <sect2 id="executionorder"
><title
>Ordem de Execução</title>
        <para>
                <itemizedlist>
                        <listitem
><para
>crie uma lista de regras aplicáveis, a partir das regras de combinações e de jogadas</para
></listitem>
                        <listitem
><para
>descubra, usando as regras do Mah Jongg, se a jogada do vencedor declarado é realmente uma jogada vencedora.</para
></listitem>
                        <listitem
><para
>para o vencedor, aplique as regras do vencedor aplicáveis</para
></listitem>
                        <listitem
><para
>se alguma das regras tiver a acção '&absolute;', mantenha apenas essas. Ainda está por definir o que acontece, caso seja encontrada mais que uma.</para
></listitem>
                        <listitem
><para
>se alguma das regras definir limites, retire todas as outras</para
></listitem>
                        <listitem
><para
>aplique as regras encontradas por essa ordem</para
></listitem>
                </itemizedlist>
        </para>
        </sect2>
        </sect1>
        <sect1 id="ruledefinition">
        <title
>A Definição</title>
        <para
>A definição é uma cadeia única de caracteres, dado que o objectivo é torná-la simples de ser gravada numa base de dados. Consiste em diversas partes separadas pelos dois caracteres "||". Uma parte expressa tanto uma condição sob a qual se aplica a regra ou expressa algumas acções. Só poderá ser definida uma parte para as acções, mas poderá definir várias para as condições. A regra aplica-se assim que pelo menos uma das expressões de condições corresponder à jogada.</para
><para
>O &kajongg; vem com dois conjuntos de regras predefinidos, que implementam exactamente as mesmas regras chinesas clássicas que se jogam também pela DMJL na Alemanha. Isto dever-lhe-á dar bastantes exemplos.</para
><para
>Estas são todas as partes reconhecidas:</para>
        <variablelist>
                <varlistentry>
                        <term
>Expressão Regular com Capitalização Variável</term>
                        <listitem
><para
>Uma parte que comece por um I é uma <link linkend="regex"
>Expressão Regular</link
> que não faz qualquer diferença entre maiúsculas e minúsculas. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Acção</term>
                        <listitem
><para
>Uma parte que comece por A é uma lista de <link linkend="actions"
>Acções</link
>. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Expressão Manual</term>
                        <listitem
><para
>Esta é uma <link linkend="regex"
>Expressão Regular</link
> opcional. Para os jogos de pontuação manual, define se esta regra deverá ser seleccionada pelo jogador assinalado. O M inicial não pertence à expressão regular. Um exemplo disto seria a regra "Última Peça Retirada da Parede Morta". </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Expressão Regular</term>
                        <listitem
><para
>Qualquer outra parte é uma <link linkend="regex"
>Expressão Regular</link
>. </para
></listitem>
                </varlistentry>
        </variablelist>
        </sect1>
        <sect1 id="regex">
        <title
>Expressões Regulares</title>
        <para
>Uma expressão regular é uma ferramenta de programação muito poderosa para fazer a correspondência de cadeias de caracteres. É poderosa, mas também é bastante difícil. Não é para os jogadores normais. Existem livros disponíveis que não fazem mais nada a não ser explicar as expressões regulares.</para>
        <para
>Existem diversos dialectos para as expressões regulares. O &kajongg; está escrito na linguagem de programação Python. Dado que a biblioteca-padrão do Python contém um módulo para expressões regulares, é este que é usado. </para
><para
>Para mais detalhes, veja em <ulink url="http://docs.python.org/library/re.html#regular-expression-syntax"
></ulink
> </para
><para
>Tudo o que possa ter uma influência na pontuação de uma jogada é codificada como uma única cadeia de caracteres. Depois, o &kajongg; verifica se a expressão regular corresponde a esse texto. Se o fizer, a regra é aplicada.</para>
        <para
>Por exemplo, esta expressão regular corresponde à jogada por limite "Todos os Verdes":</para
><programlisting
>( |[bB][23468]|[dD]g)*[fy/]</programlisting>
        <sect2
><title
>Estrutura do Texto de uma Jogada</title>
        <para
>O conteúdo do texto de uma jogada é sempre o mesmo, independentemente da língua que usar no seu ambiente de trabalho.</para>
        <para
>O texto que representa uma jogada consiste em diversos textos parciais, separados por um espaço. A ordem destas partes é sempre a mesma, exceptuando as combinações no início.</para>
        <para
>O &kajongg; é capaz de reagrupar as peças escondidas em combinações, com o objectivo de obter uma pontuação máxima. Não interessa como são agrupadas as peças para isto funcionar. Contudo, quando se relaciona com as as jogadas por limite, isto poderá falhar. É por isso que o &kajongg; irá tentar o agrupamento original das peças, tal como é introduzido pelo utilizador, bem como a variante reagrupada. Se algum deles corresponder à expressão regular da regra, esta aplicar-se-á. A variante que resultar na melhor pontuação é a escolhida.</para>
        <para
>Aqui vem um exemplo. Este está apenas numa linha, mas está aqui dividido por razões de legibilidade. Para além disso, esta frase está repetida uma vez, porque algumas expressões regulares são muito mais fáceis de escrever se as partes poderem ser referenciadas por outra ordem. Veja a regra Roubar o Kong: A sua expressão regular vê primeiro o grupo L (Última Peça) antes de olhar para as combinações.</para
><programlisting
><literal
>c1c1c1C1 s1s2s3 b6b6b7b7b8b8 b5b5 fn yn
/c416s000b000b000b200 -C416s000b000b000b200 %n Mneka LB5B5B5</literal
></programlisting>
<para
>Uma peça é representada por 2 caracteres. O primeiro é o 's' para pedra, 'b' para bambu, 'c' para carácter, 'w' para vento, 'd' para dragão, 'y' para um bónus de estação e 'f' para um bónus de flor. O segundo é 1..9 para os naipes, e,s,w,n para os ventos e w,r,g para os dragões (branco, vermelho, verde). As peças visíveis têm o primeiro carácter em minúsculas, enquanto as escondidas o têm em maiúsculas.</para>
<para
>Todas as partes seguintes estão sempre presentes por esta ordem, excepto a parte "Última Peça": Esta existe apenas para a jogada vencedora. <variablelist>
                <varlistentry>
                        <term
>Combinação</term>
                        <listitem
><para
>Uma parte que comece por um dos caracteres <literal
>s,b,c,d,w,S,B,C,D,W</literal
> é uma combinação. Uma combinação contém um número arbitrário de peças. O &kajongg; irá dividir as combinações com demasiadas peças, de modo a tentar maximizar a pontuação.</para
><para
>É usada uma sintaxe especial para os 'kongs': o 'c1c1c1c1' é um 'kong' aberto. O 'c1c1c1C1' é um 'kong' aberto, onde foi pedida a 4ª peça, completando um 'pung' escondido. Isto é necessário para o jogo limitado 'jogo de cores verdadeiras escondidas'. O 'c1C1C1c1' é um 'kong' declarado escondido. O 'C1C1C1C1' seria um 'kong' não declarado e escondido. Contudo, dado que não está declarado, conta como um 'pung'. Como tal, esta combinação será dividida num 'pung' C1C1C1 e num C1 individual.</para
><para
>As peças de bónus aparecem a seguir a todas as combinações.</para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Resumo</term>
                        <listitem
><para
>Uma parte que começa por / contém a informação de resumo das combinações. Isto torna mais simples criar expressões regulares. Cada combinação é representada por quatro caracteres. O primeiro carácter é um de <literal
>sbcdwSBCDW</literal
>, correspondendo as minúsculas aos expostos e as maiúsculas aos escondidos. O segundo carácter é um número que diz quantas peças a combinação contém. Vai de 0, para um 'chow', e de 1 até 4 para um 'kong'. Os dois últimos caracteres contêm o valor desta combinação. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Resumo alternativo</term>
                        <listitem
><para
>A parte que começa por '-' é idêntica ao resumo acima, mas contém os 'kongs' pedidos como 'kongs' escondidos. Algumas regras, como os "Três Pongs Escondidos", tratam um 'kong' pedido como escondido. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Comprimento da jogada</term>
                        <listitem
><para
>A parte que começa por % contém informações acerca do comprimento da jogada: 's' é uma jogada curta com peças a menos, 'n' é uma jogada com o número correcto de peças e 'l' é uma jogada longa com peças a mais. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Mah Jongg</term>
                        <listitem
><para
>Uma parte que começa por 'm', 'M' ou 'x' contém informações adicionais. O 'M' corresponde a uma jogada vencedora, enquanto o 'm' corresponde a uma jogada perdedora, e o 'x' corresponde a uma jogada proibida no Mah Jongg, por exemplo. O 'M'/'m'/'x' é seguido de um carácter para o próprio vento, um carácter para o vento prevalente, um carácter para a origem da última peça que conduziu ao Mah Jongg e um carácter para as declarações que um jogador fez.</para
><para
>Estas são as origens possíveis da última peça: w=parede, d=descartado, e=beco sem saída, z=última peça do fim, Z=última peça descartada do fim k=roubar o kong, 1=benção da terra/céu. Os valores 'w' e 'd' são especiais - são de certa forma valores intermédios. Ao escolher uma peça escondida como última peça, a origem é mudada para 'w'. De seguida, diversas regras dizem que só são aplicadas se a última peça vier da parede. Como tal, isto permite uma melhor selecção prévia das regras manuais que se aplicam de facto. Para uma melhor compreensão, veja por favor as regras do manual e consulte a <link linkend="actions"
>acção</link
> &lastsource;.</para
> <para
>Estas são as declarações possíveis: a=pedir ao início, t=sorte a dobrar. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Última Peça</term>
                        <listitem
><para
>Uma parte que começa por L contém informações acerca da última peça. Primeiro vem a última peça propriamente dita, seguida da combinação que foi terminada com a última peça. É necessária esta última combinação para a regra "A Última Peça é a Única Possível", porque nem sempre é suficiente saber que é apenas a última peça. Lembre-se que a última combinação não poderá ser um Kong, porque se completar um Kong, terá de colocar uma peça de substituição. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>Jogada Limitada por Pedido</term>
                        <listitem
><para
>Isto ainda não está implementado mas poderá ser necessário para as regras que são definidas pela BMJA (na Inglaterra). Uma parte que começa por K contém todas as peças possíveis a verificar, caso sejam atribuídos pontos para um jogada limitada pedida. Poder-se-á usar a força bruta e verificar todas as peças, mas isso poderá levar bastante tempo. </para
></listitem>
                </varlistentry>
        </variablelist>
        </para>
        </sect2>
        </sect1>
        <sect1 id="actions">
        <title
>Acções</title>
        <para
>Todas as acções de uma regra estão definidas numa única sequência de texto. Estas são separadas por espaços. Algumas delas definem um valor. </para>
        <variablelist>
                <varlistentry>
                        <term
>&payforall;</term>
                        <listitem
><para
>O jogador fez algo realmente errado, pelo que deverá pagar por todos. Mesmo assim, não é uma penalidade, dado que a soma dos pagamentos é a mesma - só o pagador é que muda. Do mesmo modo, os dois jogadores não envolvidos não efectuam pagamentos. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>&payers;=X</term>
                        <listitem
><para
>Define quantos pagadores esta regra de penalidade implica. O X é um número. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>&payees;=X</term>
                        <listitem
><para
>Define quantos receptores de pagamento esta penalidade implica. O X é um número. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>&absolute;</term>
                        <listitem
><para
>Esta regra define um pagamento absoluto. A pontuação da jogada é ignorada. Usado para as regras de penalidades. </para
></listitem>
                </varlistentry>
                <varlistentry>
                        <term
>&lastsource;</term>
                        <listitem
><para
>Esta acção define a origem da última peça. É usada nas regras manuais como a "última peça de um beco sem saída". A definição da última origem com esta acção serve como filtro para outras regras - se só forem despoletadas para determinadas origens. Essas outras regras também poderão ser regras manuais, como é óbvio. Como tal, esta filtragem irá reduzir a quantidade de regras manuais que são apresentadas ao utilizador na janela de pontuação. Se isto parecer complicado, basta brincar um pouco com a janela de pontuações e ver as opções de marcação a aparecer ou a desaparecer, dependendo da origem da última peça. </para
></listitem>
                </varlistentry>
        </variablelist>
        </sect1>
</chapter>

<chapter id="problems"
><title
>Problemas conhecidos</title>
        <itemizedlist>
                <listitem
><para
>Ainda não é possível ao próprio jogador abrir uma conta no servidor de jogos.</para
></listitem>
                <listitem
><para
>No modo de jogo, as penalidades ainda não são possíveis.</para
></listitem>
                <listitem
><para
>Os jogadores computorizados ainda são relativamente estúpidos.</para
></listitem>
                <listitem
><para
>Os nomes dos jogadores computorizados ainda não podem ser configurados.</para
></listitem>
                <listitem
><para
>Não é possível ainda prosseguir os jogos com o computador.</para
></listitem>
        </itemizedlist>
</chapter>

<chapter id="future"
><title
>Possíveis funcionalidades futuras</title>
        <itemizedlist>
                <listitem
><para
>Adicionar mais conjuntos de regras. Isto deverá ser feito opcionalmente pelas pessoas que usam esses conjuntos de regras com regularidade.</para
></listitem>
                <listitem
><para
>Adicionar sons. Os pedidos de "Chow", &etc;, deverão ser sintetizados, bem como as peças que são eliminadas. Definir sons-padrão, mas possibilitar ao jogador gravar a sua própria voz.</para
></listitem>
        </itemizedlist>
</chapter>

 <chapter id="faq"
><title
>Perguntas mais frequentes</title
> <!-- do not change this! -->
<!--This chapter is for frequently asked questions. Please use <qandaset
> <qandaentry
> only!-->
<qandaset>
<!--Following is a standard list of FAQ questions.-->
        <qandaentry>
                 <question
><para
>Quero alterar a forma como este jogo aparece. Posso fazê-lo? </para
></question>
                 <answer
><para
>Sim. Para mudar a aparência do &kappname;. use a opção do <link linkend="settings-menu-settings"
>menu</link
> para abrir o <link linkend="configuration"
>utilitário de configuração</link
>.</para
></answer>
        </qandaentry>
        <qandaentry>
                 <question
><para
>Posso usar o teclado para atribuir peças aos jogadores?</para
></question>
                 <answer
><para
>Sim. Veja como <link linkend="enterhand-tiles"
>Ter o &kajongg; a calcular a pontuação</link
></para
></answer>
        </qandaentry>
<!--Please add more Q&As if needed-->

</qandaset>
</chapter>

<chapter id="credits"
><title
>Créditos e Licença</title
> <!-- do not change this! -->
<!--This chapter is for credits and licenses.-->
	<para
>O &kappname; para o &kde; </para>

	<para
>Programa com 'copyright' &copy; 2009, 2010 de <personname
><firstname
>Wolfgang</firstname
><surname
>Rohdewald</surname
></personname
> <email
>wolfgang@rohdewald.de</email
> </para>
	<para
>Documentação com 'copyright' &copy; 2009, 2010 de <personname
><firstname
>Wolfgang</firstname
><surname
>Rohdewald</surname
></personname
> <email
>wolfgang@rohdewald.de</email
> </para>

<!-- !!!do not change ANYTHING after this line!!!! -->
<para
>Tradução de José Nuno Pires <email
>zepires@gmail.com</email
></para
> 
&underFDL; &underGPL; </chapter>

<appendix id="installation">
<title
>Instalação</title>
<para
>use o pacote .deb de <ulink url="http://www.kde-apps.org/content/show.php/kajongg?content=103206"
></ulink
>. Se não funcionar para si, poderá obter o kajongg-x-y.tar.gz no mesmo endereço e depois fazer o seguinte: <programlisting
>tar xfz kajongg-x-y.tar.gz
cd kajongg-x-y
./setup.py install
</programlisting>
</para
><para
>Em ambos os casos, terá de se certificar manualmente que os outros pacotes necessários estão instalados. O pacote da Debian ainda não contém esses requisitos. O &kajongg; necessita de: (pacotes correspondentes na Debian entre parêntesis) </para>
<itemizedlist>
	<listitem
><para
>a biblioteca de jogos do KDE4 (libkdegames5)</para
></listitem>
	<listitem
><para
>Python 2.5 ou superior (python)</para
></listitem>
	<listitem
><para
>QT4.4 ou superior (libqt4-core, libqt4-gui, libqt4-svg, libqt4-sql, libqt4-sql-sqlite)</para
></listitem>
	<listitem
><para
>as interfaces em Python para o QT4 (python-qt4, python-qt4-sql)</para
></listitem>
	<listitem
><para
>as interfaces em Python para o KDE4 (python-kde4)</para
></listitem>
        <listitem
><para
>a interface 'twisted' em Python (python-twisted-core)</para
></listitem>
        <listitem
><para
>sqlite3 (libsqlite3-0)</para
></listitem>
</itemizedlist>

</appendix>

&documentation.index;
</book>
<!--
Local Variables:
mode: sgml
sgml-minimize-attributes:nil
sgml-general-insert-case:lower
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-always-quote-attributes:t
sgml-indent-step:0
sgml-indent-data:nil
sgml-parent-document:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
