Board index » delphi » What lang is this?

What lang is this?

Hi, I was wondering if anyone know what language this is written in (like Dutch, Italian
whatver):

{====================================== CUT HERE ==============================================}

PROGRAM Tetris;

USES
 Crt, Graph;

TYPE Matriz = Array [0..21, 0..11] OF Integer;
Type Tipopeca = Array [0..3, 0..3] OF Integer;

VAR
  Matela, Mat1Tela, Mat2Tela, Cima : Matriz;
  Next, Pecai, Pecal, Pecaf, Pecat,
  Pecao, Pecas, Peca2, Peca, Pecagira : Tipopeca;
  Prox, Aux, A, B, C, I, J, Num, Cont, Lin, Speed,
  Lines, Nivel, Graphdriver, Graphmode, Con, Bant, Numnex : Integer;
  Fim, Turn, Game, Dir, Esq, Giro, Novapeca : Boolean;
  Tecla : Char;
  Strin : String [6];
  Ponto, Old : LongInt;

PROCEDURE Botao (Col, Lin, Col1, Lin1: Integer);

BEGIN
  SetFillStyle (1, 7); Bar (Col, Lin, Col1, Lin1);
  SetColor (15); SetLineStyle (0, 1, 1);
  Line (Col, Lin, Col1, Lin); Line (Col, Lin, Col, Lin1);
  Line (Col, Lin+ 1, Col1, Lin+ 1); Line (Col+ 1, Lin, Col+ 1, Lin1);
  Line (Col, Lin+ 2, Col1, Lin+ 2); Line (Col+ 2, Lin, Col+ 2, Lin1);
  SetColor (8);
  Line (Col, Lin1, Col1, Lin1); Line (Col+ 1, Lin1- 1, Col1, Lin1- 1);
  Line (Col+ 2, Lin1- 2, Col1, Lin1- 2); Line (Col1, Lin, Col1, Lin1);
  Line (Col1- 1, Lin+ 1, Col1- 1, Lin1); Line (Col1- 2, Lin+ 2, Col1- 2, Lin1);
  SetColor (7);
  Line (Col, Lin, Col+ 2, Lin+ 2); Line (Col1, Lin1, Col1- 2, Lin1- 2);
END;

PROCEDURE Destela;

BEGIN
  IF Old<> Ponto Then
   BEGIN
     Old:= Ponto;
     Bar (1, 1, 100, 98);
     SetColor (White);
     OutTextXY (520, 85, 'Next');
     Str (Ponto, Strin); OutTextXY (5, 10, 'Score:'+ Strin);
     Str (Lines, Strin); OutTextXY (5, 30, 'Lines:'+ Strin);
     Str (Nivel, Strin); OutTextXY (5, 50, 'Level:'+ Strin);
   END;

  FOR I:= 1 TO 20 DO
    FOR J:= 1 TO 10 DO
     BEGIN
      IF Matela [I, J] = 0 THEN BEGIN
        SetFillStyle (1, Black);
        Bar ( (J- 1) * 20+ 215, (I- 1) * 20+ 25, (J- 1) * 20+ 19+ 215, (I- 1) * 20+ 19+ 25);
     END
      Else If Matela [I, J] <> Mat2Tela [I, J] Then Begin
        Botao ( (J- 1) * 20+ 215, (I- 1) * 20+ 25, (J- 1) * 20+ 19+ 215, (I- 1) * 20+ 19+ 25);
      End;
    End;
End;

Procedure Desnext;
Begin
  For I:= 0 To 3 Do
    For J:= 0 To 3 Do Begin
      If Next [I, J] = 0 Then Begin
        SetFillStyle (1, Black);
        Bar ( (J- 1) * 20+ 515, (I- 1) * 20+ 25, (J- 1) * 20+ 19+ 515, (I- 1) * 20+ 19+ 25);
      End
      Else Begin
        Botao ( (J- 1) * 20+ 515, (I- 1) * 20+ 25, (J- 1) * 20+ 19+ 515, (I- 1) * 20+ 19+ 25);
      End;
    End;
End;

Procedure Sorteia;
Begin
  Numnex:= Random (7);
  If Numnex= 0 Then Next:= Pecal
  Else If Numnex= 1 Then Next:= Pecaf
  Else If Numnex= 2 Then Next:= Pecai
  Else If Numnex= 3 Then Next:= Pecao
  Else If Numnex= 4 Then Next:= Pecas
  Else If Numnex= 5 Then Next:= Peca2
  Else If Numnex= 6 Then Next:= Pecat;
End;

Procedure Verlinha;
Begin
  Aux:= Lines;
  For A:= 1 To 4 Do
    For I:= 20 Downto 1 Do Begin
      Cont:= 0;
      For J:= 1 To 10 Do If Matela [I, J] = 1 Then Cont:= Cont+ 1;
      If Cont= 10 Then Begin
        For J:= 1 To 10 Do Begin
          Matela [I, J] := 0;
        End;
        Inc (Lines, 1);
        For Lin:= 1 To (I- 1) Do
          For J:= 1 To 10 Do Begin
            Cima [Lin, J] := Matela [Lin, J];
            Matela [Lin, J] := 0;
          End;
        For Lin:= 2 To I Do
          For J:= 1 To 10 Do
            Matela [Lin, J] := Cima [Lin- 1, J];
      End;
    End;
  Ponto:= Ponto+ ( (Lines- Aux) * (Lines- Aux) * 100);
End;

Procedure Verifica;
Begin
  If KeyPressed Then Begin
    Tecla:= ReadKey;
    If Ord (Tecla) = 077 Then Begin
      If Dir= True Then Begin
        Inc (C, 1);
        Inc (Con, 1);
        If Con< 4 Then Dec (B, 1);
        If Con>= 4 Then Begin
          Con:= 0;
          Dec (C, 1);
        End;
      End;
    End
    Else If Ord (Tecla) = 075 Then Begin
      If Esq= True Then Begin
        Dec (C, 1);
        Inc (Con, 1);
        If Con< 4 Then Dec (B, 1);
        If Con>= 4 Then Begin
          Con:= 0;
          Inc (C, 1);
        End;
      End;
    End
      Else If Ord (Tecla) = 072 Then Begin
        If Giro= True Then Begin
          Inc (Con, 1);
          If Con< 2 Then Dec (B, 1);
          If Con>= 2 Then Con:= 0;
          Pecagira:= Peca;
          If (Num= 0) Or (Num= 1) Or (Num= 6) Then Begin
            For I:= 1 To 3 Do Begin
              Peca [3, I] := Pecagira [I, 1];
              Peca [2, I] := Pecagira [I, 2];
              Peca [1, I] := Pecagira [I, 3];
            End;
          End
          Else If (Num= 4) Or (Num= 5) Then Begin
            If Turn= True Then Begin
              For I:= 0 To 3 Do Begin
                Peca [3, I] := Pecagira [I, 0];
                Peca [2, I] := Pecagira [I, 1];
                Peca [1, I] := Pecagira [I, 2];
                Peca [0, I] := Pecagira [I, 3];
                Turn:= False;
              End;
            End
            Else If Turn= False Then Begin
              If Num= 4 Then Peca:= Pecas;
              If Num= 5 Then Peca:= Peca2;
              Turn:= True;
            End;
          End
            Else If Num= 2 Then Begin
              For I:= 0 To 3 Do
                For J:= 0 To 3 Do
                  Peca [I, J] := Pecagira [J, I];
            End;
        End;
      End
        Else If Ord (Tecla) = 080 Then Speed:= 0;
  End;
End;

Begin
  DetectGraph (Graphdriver, Graphmode);
  InitGraph (Graphdriver, Graphmode, 'C:\TP\BGI');
  Randomize;
  For I:= 0 To 3 Do
    For J:= 0 To 3 Do Begin
      Pecai [I, J] := 0;
      Pecao [I, J] := 0;
      Pecal [I, J] := 0;
      Pecaf [I, J] := 0;
      Pecat [I, J] := 0;
      Pecas [I, J] := 0;
      Peca2 [I, J] := 0;
    End;
  For I:= 0 To 3 Do Pecai [2, I] := 1;
  For I:= 1 To 3 Do Pecal [2, I] := 1;
  Pecal [1, 3] := 1;
  For I:= 1 To 3 Do Pecaf [2, I] := 1;
  Pecaf [1, 1] := 1;
  For I:= 0 To 1 Do Pecas [I, 1] := 1;
  For I:= 1 To 2 Do Pecas [I, 2] := 1;
  For I:= 0 To 1 Do Peca2 [I, 2] := 1;
  For I:= 1 To 2 Do Peca2 [I, 1] := 1;
  For I:= 1 To 3 Do Pecat [2, I] := 1;
  Pecat [1, 2] := 1;
  For I:= 1 To 2 Do Pecao [1, I] := 1;
  For I:= 1 To 2 Do Pecao [2, I] := 1;
  Sorteia;
  Old:= 0;
  Con:= 0;
  Ponto:= 0;
  Lines:= 0;
  Tecla:= '0';
  For I:= 1 To 20 Do
    For J:= 1 To 10 Do Matela [I, J] := 0;
  For I:= 1 To 21 Do Matela [I, 0] := 1;
  For I:= 1 To 21 Do Matela [I, 11] := 1;
  For J:= 0 To 11 Do Matela [21, J] := 1;
  SetBkColor (Black);
  SetColor (White);
  Line (214, 25, 214, 425);
  Line (415, 25, 415, 425);
  Line (215, 425, 414, 425);
  Fim:= False;
  Game:= True;
  Repeat
    Speed:= 400;
    Nivel:= 1;
    Inc (Ponto, 10);
    Speed:= Speed- ( (Ponto Div 4000) * 10);
    Nivel:= Nivel+ (Ponto Div 4000);
    Novapeca:= False;
    Peca:= Next;
    Num:= Numnex;
    Sorteia;
    Turn:= True;
    C:= 4;
    B:= 0;
    Desnext;
    Repeat
      Verifica;
      Verifica;
      If B= Bant+ 1 Then Con:= 0;
      Esq:= True;
      Dir:= True;
      Giro:= True;
      Mat2Tela:= Matela;
      Verlinha;
      Mat1Tela:= Matela;
      For I:= 0 To 2 Do
        For J:= 0 To 2 Do Begin
          If (Num= 4) Or (Num= 5) Then
            If Matela [I+ B, J+ C] = 1 Then Giro:= False;
        End;
      For I:= 1 To 3 Do
        For J:= 1 To 3 Do Begin
          If (Num= 6) Or (Num= 0) Or (Num= 1) Then
            If Matela [I+ B, J+ C] = 1 Then Giro:= False;
        End;
      For I:= 0 To 3 Do
        For J:= 0 To 3 Do
          If Novapeca= False Then Begin
            If Num= 3 Then Giro:= False;
            If Num= 2 Then
              If Matela [I+ B, J+ C] = 1 Then Giro:= False;
            If Matela [I+ B, J+ C] <> 1 Then
            Begin
              Matela [I+ B, J+ C] := Peca [I, J];
              If (Matela [I+ B, J+ C+ 1] ) + (Peca [I, J] ) = 2 Then Dir:= False;
              If (Mat1Tela [I+ B, J+ C- 1] ) + (Peca [I, J] ) = 2 Then Esq:= False;
              If (Matela [I+ B+ 1, J+ C] ) + (Peca [I, J] ) = 2 Then
              Begin
                For I:= 0 To 3 Do
                  For J:= 0 To 3 Do
                    If Matela [I+ B, J+ C] <> 1 Then
                    Begin
                      Matela [I+ B, J+ C] := Peca [I, J];
                    End;
                Destela;
                Novapeca:= True;
              End;
            End;
          End;
      If Novapeca= False Then Begin
        Destela;
        For I:= 0 To 3 Do
          For J:= 0 To 3 Do
            If Mat1Tela [I+ B, J+ C] <> 1 Then
              Matela [I+ B, J+ C] := 0;
        Delay (Speed);
        Bant:= B;
        Inc (B, 1);
      End;
      If KeyPressed Then Tecla:= ReadKey;
      If Ord (Tecla) = 027 Then Fim:= True;
    Until (Novapeca= True) Or (Fim= True);
    For J:= 4 To 6 Do If Matela [1, J] = 1 Then Game:= False;
  Until (Game= False) Or (Fim= True);
  CloseGraph;
  ClrScr;
End.

{====================================== CUT HERE ==============================================}

Please reply back to himanshupa...@hotmail.com
Thanks!!!

 

Re:What lang is this?


In article <5oh11t$ru...@pumpkin.pangea.ca>, Himanshu Patni
<himanshupa...@hotmail.com> writes

Quote
>Hi, I was wondering if anyone know what language this is written in

>{====================================== CUT HERE ======

<snipped as requested>

Apart from it is *possibly* portuguese, how about "Borland Pascal" as a
reply.
--
Pedt Scragg <postmas...@pedt.demon.co.uk>

In principle,   is there uncertainty that
Heisenberg was working his best in chaos?
=========================================

Re:What lang is this?


"I was wondering if anyone know what language this is written
in (like Dutch, Italian whatver)..."

I don't know for sure what language it is, but I seriously doubt
that it is Dutch.  It looks like a Romance language (Spanish,
Italian, Portugese, French, etc.), but it doesn't look like
either French or Italian to me.  My best guess is Spanish or
Portugese, though there are other Romance languages...

--
Will Dwinnell
Commercial Intelligence

Re:What lang is this?


Quote
Pedt Scragg wrote:
> In article <5oh11t$ru...@pumpkin.pangea.ca>, Himanshu Patni
> <himanshupa...@hotmail.com> writes
> >Hi, I was wondering if anyone know what language this is written in

> >{====================================== CUT HERE ======
> <snipped as requested>

> Apart from it is *possibly* portuguese, how about "Borland Pascal" as a
> reply.
> --

YES, I THINK YOU ARE TRUE!!!! IT's Pascal..........and also Portuguese....
;-)   I'm sure of both: variables written in portuguese and code in pascal.

                JORDI

Other Threads