C语言实现【小游戏——飞机大战2】模块化设计

本文介绍了使用C语言实现的【小游戏——飞机大战2】,通过模块化设计,实现击中目标得分、分数梯度增加难度以及飞机碰撞结束游戏等功能。详细展示了代码实现和运行结果。
摘要由CSDN通过智能技术生成


1.目标要求:

1.击中目标,分数加1
2.分数多20【分数梯度】分,难度增加一个等级
3.飞机碰到目标时,游戏结束


2.C语言代码:
#include<stdio.h>
#include<stdlib.h>
#include<windows.h>
#include<conio.h>

#define bullets_num 15//同一屏幕可存在的子弹数量 
#define aim_num 4//同一屏幕可存在的目标数量
#define level_difference 20 //每等级的【分数梯度】 
/*
			《飞机大战_模块化》	by:你最珍贵
	 ———————————————————————
	|控制信号: | 上 | 下 | 左 | 右 | 开火 | 暂停 | 
	 ———————————————————————	 
	|    键盘: |  i |  k |  j |  l | 空格 |  z   | 
	 ———————————————————————
	 
	 1.击中目标,分数加1 
	 2.分数多20【分数梯度】分,难度增加一个等级 
	 3.飞机碰到目标时,游戏结束 

*/
int line,column;	//显示屏幕行列 
int aircraft_x,aircraft_y;	//飞机位置
 
int bullets_x[bullets_num+1]={
   0};
int bullets_y[bullets_num+1]; //子弹位置,同一屏幕最多可存在bullets_num个子弹{1~bullets_num else0} 
int aim_x[aim_num+1]={
   0};
int aim_y[aim_num+1]; //目标位置,同一屏幕最多可存在aim_num个目标{1~aim_num else0}; 

int aim_speed_num,aim_speed;//目标下落速度之变量,目标下落速度 
int scores;//分数 
int IsKnock;//是否被撞 
int level;//难度等级 

void HideCursor(){
   	//隐藏光标位置 ,这个函数复制代码就行 
	CONSOLE_CURSOR_INFO cursor_info={
   1,0}; 
	SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
}
void gotoxy(int x,int y){
   	//把光标放在(0,0)位置 ,这个函数复制代码就行
	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
	COORD pos;
	pos.X = x;
	pos.Y = y;
	SetConsoleCursorPosition(handle,pos);
} 
 
void startup(){
   		//数据初始化
	int i;
	HideCursor();	//隐藏光标功能 
	line=22,column=78;//可移动屏幕大小 
	aircraft_x = line/2,aircraft_y = column/2;//飞机初始位置 
	for(i=1;i<=aim_num;i++){
   
		aim_y[i]=rand()%column+1;</
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值