Cómo programar juegos usando Pascal gratis
Por supuesto. Cuando te duelen las muñecas por la programación, es el mejor momento para jugar.
Es un poco problemático usar Pascal, pero se puede implementar fácilmente. Pero es más conveniente utilizar Delphi.
Con Pascal, puedes utilizar programas orientados a unidades, pero no son muy bonitos. Déjame darte un código de muestra.
Tetris:
UTILIZA Crt
CONST
Cambio:Array :=1
Ventana ( 31,2,50,25);Color de texto(Blanco);Fondo de texto(Azul);
Clrscr;Ventana(31,2,51,25); ;
Tipo:=Random(7);Trans:=Random(4);Nowx:=4;Nowy:=1
Para N:=0 a 7 Hacer <; /p>
Ahora[N]:=Cambiar[Kind,Trans,N];
Mientras se puede mover(Nowx,Nowy)
Comenzar
Repetir
Limpiar;Nowy:=Nowy+1;Mostrar
Repetir
Si se presiona la tecla entonces
Mayúsculas y minúsculas(Readkey ) Of
#0:Clave de lectura de caso Of
#75:Si se puede mover (Nowx-1,Nowy) entonces comience a limpiar;Nowx:=Nowx-1;Show;End; p>
#77:Si se puede mover(Nowx+1,Nowy) entonces comenzar a limpiar;Nowx:=Nowx+1;Mostrar;Fin
#80:Comenzar a limpiar;Repetir
Si se puede mover(Nowx,Nowy+1) Entonces Nowy:=Nowy+1
Hasta que no(Canmove(Nowx,Nowy+1));Mostrar;Fin
#61:Comenzar Gotoxy(9,12);Escribir('Pausa');Repetir retraso(1000);Hasta que se presione la tecla;Fin;
Fin
# 27 :Salir;
' ',#13:Comenzar
Limpiar;Trans:=Trans+1
Si Trans=4 Entonces Trans:=0;
Para N:=0 a 7 Hacer
Ahora[N]:=Cambiar[Kind,Trans,N]
Si no(Canmove( Nowx) ,Nowy)) Luego comience Trans:=Trans-1;Para N:=0 a 7 Haga
Ahora[N]:=Change[Kind,Trans,N];Mostrar;Fin
De lo contrario Mostrar;
Finalizar;
Finalizar;
Hasta que no se presione
Retraso ((10- Velocidad); )*50);
/p>
Hasta que no(Canmove(Nowx,Nowy+1));
Puntuación:=Puntuación+1;Gotoxy(1,1);Escribir(Puntuación:5,'0') ;Velocidad:=(Puntuación Div 300)+1;
Tablero[0,Nowx+Now[0],Nowy+Now[1]]:=1
Tablero[ 0,Nowx+Now[2],Nowy+Now[3]]:=1
Tablero[0,Nowx+Now[4],Nowy+Now[5]]:=1; /p>
Tablero[0,Nowx+Now[6],Nowy+Now[7]]:=1
Borrar
Tipo:=Aleatorio(7; );Trans:=Random(4);Nowx:=4;Nowy:=1;
Para N:=0 a 7 Hacer
Ahora[N]:=Cambiar[ Tipo,Trans,N];
Fin
Gotoxy(7,12);Write('JUEGO TERMINADO');Readln
FIN.