设为首页 加入收藏

TOP

C语言图形编程--俄罗斯方块制作(二)源代码(一)
2014-11-23 20:25:11 来源: 作者: 【 】 浏览:44
Tags:语言 图形 编程 俄罗斯 方块 制作 源代码

下面是头文件head.h

/************************ (C) COPYRIGHT 2013 yang_yulei ************************
* File Name          : head.h
* Author             : yang_yulei
* Date First Issued  : 12/18/2013
* Description        : 
*
*
*******************************************************************************/
/* Define to prevent recursive inclusion -------------------------------------*/
#ifndef _HEAD_H_
#define _HEAD_H_ 

/* Includes ------------------------------------------------------------------*/
#include 
  
   
#include 
   
     #include 
    
      #include 
     
       #include 
      
        /* Macro ---------------------------------------------------------------------*/ #define TRUE 1 #define FALSE 0 //GUI游戏界面相关的参数 #define GUI_WALL_SQUARE_WIDTH 10 //外围围墙小方格的宽度(单位:像素) #define GUI_xWALL_SQUARE_NUM 30 //横向(x轴方向)围墙小方格的数量(必须是偶数) #define GUI_yWALL_SQUARE_NUM 46 //纵向(y轴方向)围墙小方格的数量(必须是偶数) #define GUI_WALL_WIDTH_PIX (GUI_WALL_SQUARE_WIDTH*GUI_xWALL_SQUARE_NUM) #define GUI_WALL_HIGH_PIX (GUI_WALL_SQUARE_WIDTH*GUI_yWALL_SQUARE_NUM) #define WINDOW_WIDTH 480 //窗口的宽度 #define WINDOW_HIGH GUI_WALL_HIGH_PIX //窗口高度 //俄罗斯方块相关的参数 //移动的方向 #define DIRECT_UP 3 #define DIRECT_DOWN 2 #define DIRECT_LEFT -1 #define DIRECT_RIGHT 1 //每一个小方块的大小(是围墙小方格宽度的2倍) #define ROCK_SQUARE_WIDTH (2*GUI_WALL_SQUARE_WIDTH) //横向能容纳小方格的数量 #define X_ROCK_SQUARE_NUM ((GUI_xWALL_SQUARE_NUM-2)/2) //纵向能容纳小方格的数量 #define Y_ROCK_SQUARE_NUM ((GUI_yWALL_SQUARE_NUM-2)/2) /* Exported types ------------------------------------------------------------*/ typedef int BOOL ; //布尔值类型 /*数据结构-线性表(结构体数组)*/ typedef struct ROCK { //用来表示方块的形状(每一个字节是8位,用每4位表示方块中的一行) unsigned int rockShapeBits ; int nextRockIndex ; //下一个方块,在数组中的下标 } RockType ; //方块在图形窗口中的位置(即定位4*4大块的左上角坐标) typedef struct LOCATE { int left ; int top ; } RockLocation_t ; /* Function prototypes -------------------------------------------------------*/ //源文件play.c中 void PlayGame(void) ; //源文件init.c中 int InitProcParameters(void) ; //源文件GUI.c中 void DrawRock(int, const struct LOCATE *, BOOL) ; void DrawGameGUI(void) ; void UpdataScore(void) ; void UpdataGrade(int) ; #endif /* _HEAD_H_ */ /*********************** (C) COPYRIGHT 2013 yang_yulei *********END OF FILE****/
      
     
    
   
  

下面是源文件main.cpp

/************************ (C) COPYRIGHT 2013 yang_yulei ************************
* File Name          : main.cpp
* Author             : yang_yulei
* Date First Issued  : 1/16/2012
* Description        : 开发环境 VC++ 6.0 含EasyX图形库(http://www.easyx.cn)
*                      俄罗斯方块
*                      
*                      
********************************************************************************
* History:
*  1/16/2012 : V0.1
* 12/18/2013 : V0.2
********************************************************************************
* 
*******************************************************************************/
/* Includes ------------------------------------------------------------------*/
#include head.h
#include 
  
   
#include 
   
     /* Typedef -------------------------------------------------------------------*/ /* Variables -----------------------------------------------------------------*/ //全局变量-游戏板的状态描述(即表示当前界面哪些位置有方块) //0表示没有,1表示有(多加了两行和两列,形成一个围墙,便于判断方块是否能够移动) char g_gameBoard[Y_ROCK_SQUARE_NUM+2][X_ROCK_SQUARE_NUM+2] = {0} ; //统计分数 int g_score = 0 ; //等级 int g_grade = 0 ; int g_rockTypeNum = 0 ; //共有多少种俄罗斯方块 RockType rockArray[50] = {(0,0)} ; /****************************
首页 上一页 1 2 3 4 5 下一页 尾页 1/5/5
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇objective-c基础教程读书笔记 下一篇C语言入门经典(第5版)之编程初步

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: