Pascal小游戏 不要消灭星星
不要消灭星星 Pascal小游戏 Chaobs改编自pascal吧
控制台小游戏嘛,就当是练习一下结构化的写法。
program wxtw;
uses crt;
type
zbdy=record
x,y:integer; end;
var n,i,x,y,t,sjs:integer; ml:char;
zb: array [1..12] of zbdy;
begin
randomize;
sjs:=random(3);
zb[1].x:=15; zb[1].y:=15;
clrscr;
gotoxy(zb[1].x,zb[1].y);
write('☆');
delay(100);
zb[2].x:=1; zb[2].y:=20;
gotoxy(zb[2].x,zb[2].y);
write('◎');
zb[10].x:=18; zb[10].y:=20;
gotoxy(zb[10].x,zb[10].y);
write('◎');
zb[11].x:=36; zb[11].y:=20;
gotoxy(zb[11].x,zb[11].y);
write('◎');
zb[12].x:=53; zb[12].y:=20;
gotoxy(zb[12].x,zb[12].y);
write('◎');
zb[3].x:=1; zb[3].y:=5;
gotoxy(zb[3].x,zb[3].y);
write('◎');
zb[4].x:=18; zb[4].y:=5;
gotoxy(zb[4].x,zb[4].y);
write('◎');
zb[5].x:=36; zb[5].y:=5;
gotoxy(zb[5].x,zb[5].y);
write('◎');
zb[6].x:=53; zb[6].y:=5;
gotoxy(zb[6].x,zb[6].y);
write('◎');
zb[7].x:=1+sjs; zb[7].y:=1+sjs;
gotoxy(zb[7].x,zb[7].y);
write('△');
zb[8].x:=40+sjs; zb[8].y:=10+sjs;
gotoxy(zb[8].x,zb[8].y);
write('△');
zb[9].x:=1+sjs; zb[9].y:=20+sjs;
gotoxy(zb[9].x,zb[9].y);
write('△');
gotoxy(zb[1].x+8,zb[1].y-2);
write('不要消灭星星');
gotoxy(zb[1].x+3,zb[1].y-1);
write('回车键开始游戏 Chaos荣誉出品 For Games by Gamers!');
gotoxy(zb[1].x+3,zb[1].y);
write('操作 上:I 下:K 左:J 右:L ');
gotoxy(zb[1].x+3,zb[1].y+1);
write('注意:碰到边框将会结束!!!');
readln;
repeat
if keypressed=true then begin
ml:=readkey;
case ml of
'i': begin
zb[1].y:=zb[1].y-1;
clrscr;
gotoxy(zb[1].x,zb[1].y);write('☆');
end;
'k': begin
zb[1].y:=zb[1].y+1;
clrscr;
gotoxy(zb[1].x,zb[1].y);
write('☆');
end;
'j' :begin
zb[1].x:=zb[1].x-1;
clrscr;
gotoxy(zb[1].x,zb[1].y);
write('☆');
end;
'l' :begin
zb[1].x:=zb[1].x+1;
clrscr;
gotoxy(zb[1].x,zb[1].y);
write('☆');
end; end; end else begin
clrscr;
if zb[2].x<=70 then
zb[2].x:=zb[2].x+1 else zb[2].x:=1;
gotoxy(zb[2].x,zb[2].y);
write('◎');
if zb[3].x<=70 then
zb[3].x:=zb[3].x+1 else zb[3].x:=1;
gotoxy(zb[3].x,zb[3].y);
write('◎');
if zb[4].x<=70 then
zb[4].x:=zb[4].x+1 else zb[4].x:=1;
gotoxy(zb[4].x,zb[4].y);
write('◎');
if zb[5].x<=70 then
zb[5].x:=zb[5].x+1 else zb[5].x:=1;
gotoxy(zb[5].x,zb[5].y);
write('◎');
if zb[6].x<=70 then
zb[6].x:=zb[6].x+1 else zb[6].x:=1;
gotoxy(zb[6].x,zb[6].y);
write('◎');
if zb[10].x<=70 then
zb[10].x:=zb[10].x+1 else zb[10].x:=1;
gotoxy(zb[10].x,zb[10].y);
write('◎');
if zb[11].x<=70 then
zb[11].x:=zb[11].x+1 else zb[11].x:=1;
gotoxy(zb[11].x,zb[11].y);
write('◎');
if zb[12].x<=70 then
zb[12].x:=zb[12].x+1 else zb[12].x:=1;
gotoxy(zb[12].x,zb[12].y);
write('◎');
gotoxy(zb[1].x,zb[1].y);
write('☆');
sjs:=random(11); if sjs=2 then begin
if zb[7].x<zb[1].x then zb[7].x:=zb[7].x+1;
if zb[7].x>zb[1].x then zb[7].x:=zb[7].x-1;
if zb[7].y<zb[1].y then zb[7].y:=zb[7].y+1;
if zb[7].y>zb[1].y then zb[7].y:=zb[7].y-1;
gotoxy(zb[7].x,zb[7].y);
if ((zb[8].x=zb[7].x)) and ((zb[8].y=zb[7].y)) or ((zb[9].x=zb[8].x) and (zb[9].y=zb[8].y)) or ((zb[7].x=zb[9].x) and (zb[7].y=zb[9].y))
then gotoxy(zb[7].x-1,zb[7].y-1);
write('△'); end else begin gotoxy(zb[7].x,zb[7].y);
write('△'); end;
sjs:=random(11); if sjs=0 then begin
if zb[8].x<zb[1].x then zb[8].x:=zb[8].x+1;
if zb[8].x>zb[1].x then zb[8].x:=zb[8].x-1;
if zb[8].y<zb[1].y then zb[8].y:=zb[8].y+1;
if zb[8].y>zb[1].y then zb[8].y:=zb[8].y-1;
gotoxy(zb[8].x,zb[8].y);
if ((zb[8].x=zb[7].x)) and ((zb[8].y=zb[7].y)) or ((zb[9].x=zb[8].x) and (zb[9].y=zb[8].y)) or ((zb[7].x=zb[9].x) and (zb[7].y=zb[9].y))
then gotoxy(zb[8].x-1,zb[8].y-1);
write('△'); end else begin gotoxy(zb[8].x,zb[8].y);
write('△'); end;
sjs:=random(11); if sjs=5 then begin
if zb[9].x<zb[1].x then zb[9].x:=zb[9].x+1;
if zb[9].x>zb[1].x then zb[9].x:=zb[9].x-1;
if zb[9].y<zb[1].y then zb[9].y:=zb[9].y+1;
if zb[9].y>zb[1].y then zb[9].y:=zb[9].y-1;
gotoxy(zb[9].x,zb[9].y);
if ((zb[8].x=zb[7].x)) and ((zb[8].y=zb[7].y)) or ((zb[9].x=zb[8].x) and (zb[9].y=zb[8].y)) or ((zb[7].x=zb[9].x) and (zb[7].y=zb[9].y))
then gotoxy(zb[9].x-1,zb[9].y-1);
write('△'); end else begin gotoxy(zb[9].x,zb[9].y);
write('△'); end;
for i:=2 to 12 do if (zb[1].x=zb[i].x) and (zb[1].y=zb[i].y) then begin
clrscr;
writeln('逃亡失败!回车键退出');
readln;
halt; end;
delay(20); end;
until ml='q';
end.
Pascal小游戏 不要消灭星星的更多相关文章
- Pascal小游戏 文件的产生
一个整人的Pascal小程序 运行之后硬盘里面会有一大堆垃圾,当然更好的方法当然不是这样做! var a,b,c,d:char;beginfor a:='0' to '9' dofor b:='0' ...
- Pascal小游戏 双人射击
一个双人的游戏 Pascal源码附上 只要俩人不脑残,一下午玩不完...又是控制台游戏中的一朵奇葩. Free Pascal 射击游戏 Program shooting_game; uses crt; ...
- Pascal小游戏之奇葩的RPG
Pascal吧友作品 一个小RPG Chaobs转载 varplife,plifemax,patt,pre:integer;gr,ex,exmax:integer;alife,alife1,aatt, ...
- Pascal小游戏 俄罗斯方块怀旧版
俄罗斯方块怀旧版(注释版) {$APPTYPE GUI}{$MODE DELPHI}program WinPiece; usesWindows; constAppName = 'WinPiece';p ...
- Pascal小游戏 随机函数
一个被人写滥了的小程序,新手学习,Pascal By Chaobs 初学者可以用它来学习随机函数的运用,当然你完全可以自己写一个随机函数. var player1,player2:longint; ...
- Pascal小游戏 打飞机
一个经典的打飞机游戏(1)Pascal代码 十分经典,有一种街机的感觉 奇葩青年的又一控制台神作. uses crt; type list=record ty,ax:integer; ...
- Pascal小游戏 井字棋
一个很经典的井字棋游戏 Pascal源码Chaobs奉上 注意:1.有的FP版本不支持汉语,将会出现乱码.2.别想赢电脑了,平手不错了. 井字过三关: program TicTacToe; uses ...
- Pascal小游戏 贪吃蛇
一段未完成的Pascal贪吃蛇 说这段代码未完成其实是没有源代码格式化,FP中一行最多只有255字符宽. uses crt; const screenwidth=50; screenheight=24 ...
- Pascal小游戏 俄罗斯方块
俄罗斯方块已经成为了和“Hello World”一样的程序了吧? 不要直接复制,可能需要事先 Format. program cube;uses crt,graph,dos;var gd,gm:sma ...
随机推荐
- 双网卡(一外一内)都启用,将内网卡默认网关去除即可正常连接Internet
- hdu-3449 Consumer---有依赖性质的背包
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=3449 题目大意: fj打算去买一些东西,在那之前,他需要一些盒子去装他打算要买的不同的物品.每一个盒 ...
- react里面Fragments的使用
关于react Fragments,React 中一个常见模式是为一个组件返回多个元素.Fragments 可以让你聚合一个子元素列表,并且不在DOM中增加额外节点. render() { retur ...
- veritas.com常用资源汇总
NetBackup 8.1.2文档(合集) https://www.veritas.com/support/en_US/article.100044086 NetBackup产品组停止支持生命周期 ...
- ThinkPHP:create()方法有什么用呢?
1.create方法可以对POST提交的数据进行处理(通过表中的字段名称与表单提交的名称对应关系自动封装数据实例),例如user表中有一个字段名叫"username",如果表单中有 ...
- linux服务器安装nginx及使用
Nginx在个人的使用之后,感觉非常的方便,所以在这里给出自己安装配置方案.它是一款高性能的 Web和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器.负载均衡是个不错的选择. ...
- fastjson 应用
fastjson优势就是解析快,用法和json-lib.jar差不多(如下图) 贴心的附上jar和反编译工具:https://pan.baidu.com/s/1iADAiFyoUZVBAFSPsIeY ...
- java.lang.UnsupportedOperationException: Exception occurred during processing request: null
1.Action有问题,Struts2注解拼写错误,注解包版本不匹配! 2.今天还有一个错误,Tomcat服务器异常,无法启动,Remove/clean后还是无法启动 :极大可能是web.xml 写错 ...
- hibernate系列之四
数据库中表之间的关系: 一对一.一对多.多对多 一对多的建表原则:在多的一方创建外键指向一的一方的主键: 多对多的建表原则:创建一个中间表,中间表中至少有两个字段作为外键分别指向多对多双方的主键: 一 ...
- vim指令,快捷键汇总
Vim 命令.操作.快捷键全集 命令历史 以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令. 启动vim 在命令行窗口中输入以下命令即可 vim 直接启动vim vi ...