罗培羽—C语言简单游戏编程教学(一)

标签:
教育 |
分类: 计算机 |
最近很多同学都在学习C语言,其中大多是用TC来编译的。在这里,我们就来讲讲如何用c语言来制作一个最简单的游戏。
我们这个游戏是一个很简单的游戏,玩家可以控制主角去“吃”屏幕上的“心”,当屏幕上全部的“心”被玩家控制的主角“吃”完的时候,游戏显示胜利信息。
第一步:创建角色
首先,我们打开我们的编程软件,可以tc20或者tc30等,我这里就用win-tc作为演示。
我们新建一个文件,先将其保存,并命名为game.c
然后然我们通过简单的编程来显示我们的主角,这里我们以一个笑脸字符来代表主角。
#include <stdio.h>
main()
{
}
大家看到,我们这里调用stdio.h,这个头文件包含了很多输入输出的函数,我们这里用到printf函数和getch函数都包含在stdio.h头文件中。只要调用stdio.h才能使用以上两个函数。程序从main()开始执行后有两个语句。printf("%c",2);其中的2是显示ASCII码序号为2的那个字符,看起来就像一个笑脸,其他的ASCII码大家可以从网上搜索到。而对于getch();我们可以当做是等待按键输入的函数,如果没有按键输入,程序就被卡在getch();的地方,这样程序才不会很快就结束了。
第二步:控制角色
接下来,我们想方设法来让我们的主角可以根据我们的按键而动起来。当我们按下键盘“上”的时候,主角就往上移动。其他方向亦是如此。
我们先来看看如何判断按键的输入呢, 在bios.h头文件中有一个bioskey函数,可以判断我们的按键。我们可以通过如下的结构来判断按键:
while("")
{
当按键为上时发生什么事
当按键为下时发生什么事
当按键为左时发生什么事
当按键为右时发生什么事
}
其中的while(""){……}就是将{}里面的内容无限次地循环。同时我们可以通过switch语句来判断玩家到底按了哪个按键。
再来说说两个会用到的函数,clrscr函数是清屏函数,也就是把屏幕上的内容清空。gotoxy(横坐标, 纵坐标)这个函数会把光标移动到我们指定的坐标,使后面的输出在指定位置开始。
为了调用的方便,我们还添加一个函数draw专门来负责显示。
看看我们修改后的代码, 中间的内容是注释
#include <stdio.h>
#include <bios.h>
int x=10, y=10;
void draw(int x,int y)
{
clrscr();
gotoxy(x, y);
printf("%c",2);
}
void main()
{
draw(x,y);
}
好了,大家接下来就可以运行一下看看效果了,我们现在可以按键盘上的上下左右键来控制屏幕中笑脸的移动了。效果如下图所示: