鱼C论坛

 找回密码
 立即注册
查看: 4342|回复: 16

[技术交流] 飞机大战小游戏编写教程(2)

[复制链接]
发表于 2016-2-11 19:22:10 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 zlh 于 2016-2-12 08:53 编辑

大家好,今天我们继续来编写我们的飞机大战小游戏。
今天我们来解决画图问题。
大家都知道,在VC中是很难画出漂亮的图形的,因为VC没有继承TC的<graphics.h>函数库。
所以我们只能用简单的字符来画出图案。

程序开始我们要先画出一个边框,来限定飞机的飞行范围。
我们不妨设置边框的边长为21×20.
不要以为长和宽差不多,在上一篇文章中我曾提到:DOS界面正常是一个80列×25行的窗口。
实际上80列中,每一个字符占两格。25行中,每个字符占一格。
如果你还不明白,打开你的编译器,分别输出同样数量的横向排列的*和纵向排列的*。
是不是纵向排列的比横向排列的多?

回到正题
我们不妨用*号作为边框。而画边框时我们不可能一个一个*号输出,所以我们要使用for循环来节省工作量。
这里我们就要用到gotoxy()函数。这个函数可以到我的上一篇文章复制。飞机大战小游戏编写教程(1)
我们画长时,列x不变。画宽时,行y不变。变量用for循环每次增加的那个数据控制。
下面是代码。
void huatu()//画图
{ 
    int i,n;
    for(i=0;i<=20;i++)
   {
        for(n=0;n<=20;n++)
        {
              printf("*");
               }  
        printf("\n");
    }
    for(i=1;i<=19;i++)
    {
         for(n=1;n<=19;n++)
        {
              gotoxy(i,n);
              printf(" ");
        }
     }
}

画完图后当然是必不可少的游戏说明。
注释就十分的简单,只要移动到一个合适的位置,就可以输出了。
下面是代码:
void shuoming() 
{
    gotoxy(0,0);
    printf("\t\t\t\n\n\n\n");
    printf("\t\t\t方向控制\n\n"
    "\t\t\t左 a\n\n"
    "\t\t\t右 d\n\n"
    "\t\t\t子弹 空格\n\n\n"
    "\t\t\t退出请按 ESC\n"); 
    gotoxy(x,y);
    printf("♂");
    gotoxy(22,2);
    printf("分数:"); 
    gotoxy(0,0);
}
这里我顺便把飞机也包括在内,看了我的注释大家可能会奇怪,为什么飞机只会左右走呢?
这个问题在我们明天的各项角色的移动中会讲到。

921b4ffc05c6a22338a1cfe849ef4635_512_512.jpg

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2016-2-11 19:24:20 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-11 19:51:04 | 显示全部楼层
zlh 发表于 2016-2-11 19:24
沙发945
@小甲鱼的二师兄 @康小泡 @拈花小仙 @machimilk @黑龍

等你把教程做完以后,找小甲鱼推广下,不要一个一个at我们哈`
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-11 19:52:19 | 显示全部楼层
还是柯南那个头像帅,不要用QQ秀头像啦`
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-2-11 21:01:36 | 显示全部楼层
拈花小仙 发表于 2016-2-11 19:52
还是柯南那个头像帅,不要用QQ秀头像啦`

ok
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-11 21:29:57 | 显示全部楼层
挺好的
ps:楼主的代码的缩进弄得规范一些。。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-11 21:30:20 | 显示全部楼层
拈花小仙 发表于 2016-2-11 19:52
还是柯南那个头像帅,不要用QQ秀头像啦`

我感觉初始的好看
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-11 23:37:13 | 显示全部楼层
还是连续剧啊
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-11 23:54:04 | 显示全部楼层
黑龍 发表于 2016-2-11 21:29
挺好的
ps:楼主的代码的缩进弄得规范一些。。。

他们的小龟比你的好看哈,你的有毛边。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-2-12 08:57:35 | 显示全部楼层
黑龍 发表于 2016-2-11 21:29
挺好的
ps:楼主的代码的缩进弄得规范一些。。。

本来是好的,复制过来后就不对了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-12 09:25:26 | 显示全部楼层
学习学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-2-14 19:44:13 | 显示全部楼层
1在这么前面,2居然没有人顶
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-17 15:54:35 | 显示全部楼层
1哇塞,解析的好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2016-2-27 17:20:17 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-2-29 09:41:12 | 显示全部楼层
支持!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-3-1 16:28:49 | 显示全部楼层
写得这么好没人来加分呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2017-6-9 10:04:07 | 显示全部楼层
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-23 20:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表