{--------------------------------------------------------}
{
{    Programa SuecaVox
{             jogo de sueca para deficientes visuais
{
{    Autor:  Geraldo José Ferreira Chagas Jr.
{
{    Início em 12/06/99
{    Termino em 15/09/99
{
{--------------------------------------------------------}

program SuecaVox;

(* para utilização do som*)
{$M 16000, 8000}

{$R suecavox}

uses dvcrt,svcartas, svEscolh, svVars, svJoga, winprocs, wintypes,dvwin, svMensa;

var s: string;

procedure Abertura;
begin
   sintSom('tada');
   fala('svabert',0); { SuecaVox - v. 1.0 }
   writeln (' - v.1.0');
   writeln;

   while sintFalando do;
end;

procedure Inicializar;
var
  DC: HDC;
  Metrics: TTextMetric;
  XTela,Ytela:integer;
begin

   screenSize.y := 29; (* tamanho da tela *)

   Abertura;

   checkFocus := true; (* se a tela foi sobre posta *)

   (* proporcionalidade da tela *)
   DC := GetDC(CrtWindow);
   GetTextMetrics(DC, Metrics);
   ReleaseDC (CrtWindow, DC);

   XTela := Metrics.tmMaxCharWidth;
   YTela := Metrics.tmHeight + Metrics.tmExternalLeading;

   Tela.X := (XTela / 14);
   Tela.Y := (YTela / 16);
  (***********************************)

   cria_jogadores;

   fala ('sv1ajuda',2);  { use as setas para selecionar os nomes e aperte
                          ENTER }
   (* pergunta o nome dos participantes *)

   gotoxy (1, 5);
   fala ('svinfnom',2);    { Escolha seu nome }
   escolhe_jogadores (jogador[0].nome);

   limpaJanela (1,5,30,5);
   gotoxy (1, 5);
   fala ('svinfpar',2);    { Escolha o nome de seu parceiro }
   escolhe_jogadores (jogador[2].nome);

   limpaJanela (1,5,30,5);
   gotoxy (1, 5);
   fala ('svopon1',0);     { seu primeiro oponente }
   escolhe_jogadores(jogador[1].nome);
   delay (500);

   limpaJanela (1,5,30,5);
   gotoxy (1, 5);
   fala ('svopon2',0);     { seu se gundo oponente }
   escolhe_jogadores (jogador[3].nome);
   delay (500);

   limpaJanela (1,3,80,24);
   gotoxy (1, 3);
   textcolor (14);
   fala ('svjogord',1);           { os jogadores na ordem são }

   fala ('svvocee',0);            { você é }
   writeln (jogador[0].nome.nomeJogadores);
   sintSom (jogador[0].nome.som);

   fala ('svjogesq',0);   { seu jogador da esquerda é }
   writeln (jogador[1].nome.nomeJogadores);
   sintSom (jogador[1].nome.som);

   fala ('svseupar',0);
   writeln (jogador[2].nome.nomeJogadores);
   sintSom (jogador[2].nome.som);
   delay (1000);

   write (jogador[3].nome.nomeJogadores);
   sintSom (jogador[3].nome.som);
   fala ('svposi2',1);

   textcolor (7);
   textbackground (0);
   while sintFalando do;
   delay (1000);
end;

procedure finalizar;
begin
   clrscr;
   gotoxy (32,13);
   sintSom ('Chimes');
   fala ('svfim',0);    { fim do SuecaVox }

   sintFim;
   doneWincrt;
end;

var opc:char;

begin
   (* para a utilização do som (incluir o DIEQ2 no dosvox.ini) *)

   sintInic (0, sintAmbiente ('SUECAVOX', 'DIRSUECAVOX'));

   Inicializar;

   repeat
      renuncia := FALSE;
      joga_serie_de_partidas;
      gotoxy (24,30);
      fala ('svjogan',0);     { deseja jogar novamente ?}
      opc := sintreadKey;
      write (opc);

   until upcase(opc) = 'N';

   finalizar;
end.