如何用免费的pascal制作游戏
Pascal有点麻烦,但是很容易实现。但是用delphi更方便。
有了pascal,你可以使用面向单元的程序,但不是很好。让我给你一些示例代码。
俄罗斯方块:
使用Crt
常数
变化:数组:= 1;
窗口(31,2,50,25);Textcolor(白色);Textbackground(蓝色);
Clrscr窗口(31,2,51,25);
速度:= 1;
kind:= Random(7);trans:= Random(4);nowx:= 4;nowy:= 1;
对于N:=0到7 Do
现在[N]:=Change[Kind,Trans,N];
而Canmove(Nowx,Nowy)做
开始
重复
干净;Nowy:= Nowy+1;展示;
重复
如果按键,则
的大小写(Readkey)
#0:案例读取键,共个
#75:如果可以移动(Nowx-1,Nowy),那么开始清理;Nowx:= Nowx-1;展示;结束;
如果可以移动(Nowx+1,Nowy ),那么开始清理;Nowx:= Nowx+1;展示;结束;
#80:开始清洗;重复
如果Canmove(Nowx,Nowy+1)那么Nowy:= Nowy+1;
直到没有(Canmove(Nowx,Nowy+1));展示;结束;
#61:Begin Gotoxy(9,12);写(“暂停”);重复延迟(1000);直到按键;Furbish结束;
结束;
#27:退出;
',#13:开始
干净;Trans:= Trans+1;
如果Trans=4那么Trans:= 0;
对于N:=0到7 Do
现在[N]:=Change[Kind,Trans,N];
如果不是(Canmove(Nowx,Nowy))那么开始Trans:= Trans-1;对于N:=0到7 Do
现在[N]:=Change[Kind,Trans,N];展示;结束
Else显示;
结束;
结束;
直到没有(按键);
延时((10-速度)* 50);
直到没有(Canmove(Nowx,Nowy+1));
分数:=分数+1;Gotoxy(1,1);写(分数:5,' 0 ');速度:=(分数Div 300)+1;
Board[0,Nowx+Now[0],Nowy+Now[1]]:= 1;
Board[0,Nowx+Now[2],Nowy+Now[3]]:= 1;
Board[0,Nowx+Now[4],Nowy+Now[5]]:= 1;
Board[0,Nowx+Now[6],Nowy+Now[7]]:= 1;
清晰;
kind:= Random(7);trans:= Random(4);nowx:= 4;nowy:= 1;
对于N:=0到7 Do
现在[N]:=Change[Kind,Trans,N];
结束;
Gotoxy(7,12);写(‘游戏结束’);Readln
结束。