| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 866 人关注过本帖
标题:在后面的帖子(已完善)...
只看楼主 加入收藏
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
收藏
 问题点数:0 回复次数:4 
在后面的帖子(已完善)...

刚改写了一个小C游戏,只是个小样,大家见笑一下吧..嘿嘿,.. 不过,通过学习和改写的过程,学了一些东西,挺满足的 (别小看这点小玩意儿,花了我一天时间) #include <math.h> #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <graphics.h> main() { int gdriver,gmode,c,b,i,l,j,k; c=1; gdriver=DETECT; initgraph(&gdriver,&gmode,""); setwritemode(XOR_PUT);

setcolor(BLUE); rectangle(180+c*100,350,220+c*100,390); rectangle(170+c*100,340,230+c*100,350); rectangle(190+c*100,320,210+c*100,340); rectangle(170+c*100,390,230+c*100,400); setcolor(5); line(190+c*100,350,190+c*100,390); line(200+c*100,350,200+c*100,390); line(210+c*100,350,210+c*100,390); line(200+c*100,300,200+c*100,320); line(185+c*100,300,215+c*100,300); loop: do {

for(i=rand()%3,l=rand()%3,j=-20;j<=70;j++) { rectangle(170+i*100,j*10,230+i*100,60+j*10); rectangle(160+i*100,70+j*10,240+i*100,260+j*10); line(180+i*100,70+j*10,180+i*100,260+j*10); line(200+i*100,70+j*10,200+i*100,260+j*10); line(220+i*100,70+j*10,220+i*100,260+j*10);

if(j>=10) { k=j-20; rectangle(170+l*100,k*10,230+l*100,60+k*10); /*rectangle(160+l*100,70+k*10,240+l*100,260+k*10); */ /*line(180+l*100,70+k*10,180+l*100,260+k*10); line(200+l*100,70+k*10,200+l*100,260+k*10); line(220+l*100,70+k*10,220+l*100,260+k*10); */

}

delay(2000);

rectangle(170+i*100,j*10,230+i*100,60+j*10); rectangle(160+i*100,70+j*10,240+i*100,260+j*10); line(180+i*100,70+j*10,180+i*100,260+j*10); line(200+i*100,70+j*10,200+i*100,260+j*10); line(220+i*100,70+j*10,220+i*100,260+j*10); if(j>=10) { rectangle(170+l*100,k*10,230+l*100,60+k*10); /*rectangle(160+i*100,70+k*10,240+l*100,260+k*10);*/ /*line(180+l*100,70+k*10,180+l*100,260+k*10); line(200+l*100,70+k*10,200+l*100,260+k*10); line(220+l*100,70+k*10,220+l*100,260+k*10); */

} } }while(bioskey(1)==0); b=bioskey(0);

setcolor(BLUE); rectangle(180+c*100,350,220+c*100,390); rectangle(170+c*100,340,230+c*100,350); rectangle(190+c*100,320,210+c*100,340); rectangle(170+c*100,390,230+c*100,400); setcolor(5); line(190+c*100,350,190+c*100,390); line(200+c*100,350,200+c*100,390); line(210+c*100,350,210+c*100,390); line(200+c*100,300,200+c*100,320); line(185+c*100,300,215+c*100,300);

if((b==0x4b00)&&(c>0)) c--; else if((b==0x4d00)&&(c<2)) c++;

else if((b==0x5000)&&(c<2)) sleep(1);

setcolor(BLUE);

setcolor(BLUE); rectangle(180+c*100,350,220+c*100,390); rectangle(170+c*100,340,230+c*100,350); rectangle(190+c*100,320,210+c*100,340); rectangle(170+c*100,390,230+c*100,400); setcolor(5); line(190+c*100,350,190+c*100,390); line(200+c*100,350,200+c*100,390); line(210+c*100,350,210+c*100,390); line(200+c*100,300,200+c*100,320); line(185+c*100,300,215+c*100,300); goto loop;

}

[此贴子已经被作者于2005-1-15 20:33:50编辑过]

搜索更多相关主题的帖子: 帖子 
2005-01-10 00:20
ajey2004
Rank: 1
等 级:新手上路
帖 子:164
专家分:0
注 册:2004-12-30
收藏
得分:0 
不好玩啊,反应也太慢了吧

2005-01-11 19:06
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
收藏
得分:0 
是啊,我这个键盘反映总是要等到那个循环结束才执行,不知怎样改啊? 谁会请改一下啊!

有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2005-01-12 22:28
Knocker
Rank: 8Rank: 8
等 级:贵宾
威 望:47
帖 子:10454
专家分:603
注 册:2004-6-1
收藏
得分:0 

#include <math.h> #include <conio.h> #include <stdio.h> #include <stdlib.h> #include <graphics.h> main() { int gdriver,gmode,c=1,b,i,l,j,k ; gdriver=DETECT ; initgraph(&gdriver,&gmode,""); setwritemode(XOR_PUT); setcolor(BLUE);

rectangle(180+c*100,350,220+c*100,390); rectangle(170+c*100,340,230+c*100,350); rectangle(190+c*100,320,210+c*100,340); rectangle(170+c*100,390,230+c*100,400); setcolor(5); line(190+c*100,350,190+c*100,390); line(200+c*100,350,200+c*100,390); line(210+c*100,350,210+c*100,390); line(200+c*100,300,200+c*100,320); line(185+c*100,300,215+c*100,300); i=rand()%3,l=rand()%3,j=-20;//初始化 while(1){//能不用goto就不用 do { if(j==70)i=rand()%3,l=rand()%3,j=-20;//问题在原来的for,改为if else { rectangle(170+i*100,j*10,230+i*100,60+j*10); rectangle(160+i*100,70+j*10,240+i*100,260+j*10); line(180+i*100,70+j*10,180+i*100,260+j*10); line(200+i*100,70+j*10,200+i*100,260+j*10); line(220+i*100,70+j*10,220+i*100,260+j*10); if(j>=10) { k=j-20 ; rectangle(170+l*100,k*10,230+l*100,60+k*10);

} delay(2000); rectangle(170+i*100,j*10,230+i*100,60+j*10); rectangle(160+i*100,70+j*10,240+i*100,260+j*10); line(180+i*100,70+j*10,180+i*100,260+j*10); line(200+i*100,70+j*10,200+i*100,260+j*10); line(220+i*100,70+j*10,220+i*100,260+j*10); if(j>=10) { rectangle(170+l*100,k*10,230+l*100,60+k*10);

} j++; } } while(bioskey(1)==0); b=bioskey(0); setcolor(BLUE); rectangle(180+c*100,350,220+c*100,390); rectangle(170+c*100,340,230+c*100,350); rectangle(190+c*100,320,210+c*100,340); rectangle(170+c*100,390,230+c*100,400); setcolor(5); line(190+c*100,350,190+c*100,390); line(200+c*100,350,200+c*100,390); line(210+c*100,350,210+c*100,390); line(200+c*100,300,200+c*100,320); line(185+c*100,300,215+c*100,300); if((b==0x4b00)&&(c>0)) c--; if((b==0x4d00)&&(c<2)) c++; if((b==0x5000)&&(c<2)) sleep(1);

setcolor(BLUE); rectangle(180+c*100,350,220+c*100,390); rectangle(170+c*100,340,230+c*100,350); rectangle(190+c*100,320,210+c*100,340); rectangle(170+c*100,390,230+c*100,400); setcolor(5); line(190+c*100,350,190+c*100,390); line(200+c*100,350,200+c*100,390); line(210+c*100,350,210+c*100,390); line(200+c*100,300,200+c*100,320); line(185+c*100,300,215+c*100,300); } getch();//1。还应加上关闭图形模式 2。考虑模块化 }


九洲方除百尺冰,映秀又遭蛮牛耕。汽笛嘶鸣国旗半,哀伤尽处是重生。     -老K
治国就是治吏。礼义廉耻,国之四维。四维不张,国之不国。   -毛泽东
2005-01-13 22:10
grub2linux
Rank: 1
等 级:新手上路
帖 子:335
专家分:0
注 册:2004-12-25
收藏
得分:0 
我已经重新完善了: http://bbs.bc-cn.net/bbs/dispbbs.asp?BoardID=99&ID=11319 各位见笑一下,不过很遗憾只有PC SPEAKER ,还没有音乐..谁会的能不能补充进去?

有缘相识!我中文系的 3月拿下C/C++/VC 5天写游戏 2月写游戏系统 有空去http://mykool.go2.
2005-01-15 02:40
快速回复:在后面的帖子(已完善)...
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017558 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved