给出一些PASCAL游戏源代码。
使用crt
类型type 1 =记录
h,l,f:整数;
结束;
const m:那么数组
开始
if地图);
if(xh & lt;1)或(xh & gt6)或(xl & lt1)或(xl & gt16)然后破;
如果map[xh,xl]=1那么开始pushtype1(fire,xh,xl,5);map[xh,XL]:= 0;newthing(xh,XL);打破;结束
否则,如果map[xh,xl]=2,则中断
else pushtype1(fire,xh,xl,5);
结束;
结束;
结束;
程序检查;
var i,t:整数;
开始
t:= 0;
对于i:=1到高(火)做
用火[我]做
开始
if(f & gt;0)和(h=yellow.h)和(l=yellow.l)然后开始yellow . f:= 0;b:=真;结束;
if(f & gt;0)和(h=white.h)和(l=white.l)然后开始white . f:= 0;b:=真;结束;
结束;
结束;
程序运行炸弹;
var i:整数;
开始
对于i:=1到高(ybomb) do
与我一起做
如果f & gt那么0
开始
第(f)项决定;
如果f & lt那么=0
开始
map[h,l]:= 0;
炸弹(h,l,yw);
Inc(Yb);
结束;
结束;
对于i:=1到高(wbomb) do
与我一起做
如果f & gt那么0
开始
第(f)项决定;
如果f & lt那么=0
开始
map[h,l]:= 0;
炸弹(h,l,ww);
公司(世行);
结束;
结束;
结束;
过程初始化;
var i,j:整数;
开始
Yb:= 1;WB:= 1;yw:= 1;ww:= 1;
textbackground(黑色);
clrscr
fillchar(map,sizeof(map),0);
for i:=1到6 do
对于j:=1到16 do
map[i,j]:=m[i,j];
用黄色做开头f:= 1;h:= 6;l:= 1;结束;
用white做begin f:= 1;h:= 1;l:= 16;结束;
fillchar(ybomb,sizeof(ybomb),0);
fillchar(wbomb,sizeof(wbomb),0);
fillchar(fire,sizeof(fire),0);
fillchar(岳氏,sizeof(岳氏),0);
fillchar(weili,sizeof(weili),0);
TMS:= 0;TM:= 0;ts:= 0;
结束;
主程序;
var ch:char;
I:整数;
开始
t:= 0;
而(white.f=1)和(yellow.f=1)会
开始
b:=假;
延迟(8);
inc(tms,10);
如果tms=1000,则
开始
TMS:= 0;
公司(ts);
如果ts=60,则
开始
Inc(TM);
ts:= 0;
结束;
结束;
如果tms mod 100=0,则
对于i:=1到高(火)做
开始
如果火[我]。f=0那么b:=真;
dec(火[i].f);
结束;
如果按键,则
开始
ch:= read key;
b:=真;
runbomby(ch);
结束;
如果tms=0,则运行炸弹;
检查;
checkthing
如果b,则开始打印;Inc(t);结束;
结束;
延迟(500);
结束;
程序结束;
var ch:char;
I:整数;
开始
clrscr
gotoxy(1,1);
如果(white.f=0)和(yellow.f=0)则
开始
writeln(' DDD·RRR A W W W ');
writeln(' D D R R A A W W W W ');
writeln(' D D RR AAAAA WW WW ');
writeln(' DDD R RR A A W W ');
结束
否则,如果yellow.f=0,则
开始
text color(15);
writeln(' W W W H H IIII TTTTTT eeee W W W W OOO N N ');
writeln(' W W W W HHHHH II TT EE _ _ _ _ W W W O O NN N ');
writeln(' WW WW H H II TT EE WW WW O on NN ');
writeln(' W W H H IIII TT eeee W W OOO N N ');
结束
否则,如果white.f=0,则
开始
text color(14);
writeln(' Y Y eeeee L L OOO W W W W W W W OOO N N ');
writeln(' Y Y EE _ _ _ _ L L O O W W W W W W W W O O N ');
writeln(' Y yee L L O O WW WW WW O on NN ');
writeln(' Y eeee LLLL LLLL OOO W W W W W OOO N N ');
结束;
重复ch:= read key;直到ch = # 13;
结束;
开始
虽然真实如此
开始
init
主要;
结束;
结束;
readln
结束。