基于VC++6.0开发俄罗斯方块(二)

游戏欢迎界面设计

1.游戏欢迎界面概述

这里不仅实现了游戏的开始运行,键盘按键的说明,游戏的规则的说明,退出游戏。还对游戏界面进行了适当的美化:
数字键1:开始游戏;
数字键2:功能按键说明;
数字键3: 查看游戏规则;
数字键4:退出游戏;

在这里插入图片描述

2.设置文字颜色

沃尔玛你可以看到上图文字和图案是彩色的,而系统默认的应该是白色,我们需要用函数来实现相应的功能

/**
 * 文字颜色函数      此函数的局限性:1、只能Windows系统下使用   2、不能改变背景颜色
 */
int color(int c)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);        //更改文字颜色
	return 0;
}

在C语言中,SetConsoleTextAttribute函数用于设置控制台窗口字体颜色和背景色,函数原型:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.设置文字显示位置

注意:文字的显示位置可以通过设置坐标来控制,定义了gotoxy函数

/**
 * 获取屏幕光标位置
 */
void gotoxy(int x, int y)
{
 	COORD pos;
 	pos.X = x;  	//横坐标
 	pos.Y = y;  	//纵坐标
 	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}

在C语言中用SetConsoleCursorPosition函数来定位坐标的位置

4.设置标题位置

在这里插入图片描述
欢迎界面由三部分组成:
第一部分: 标题部分;包括游戏名称和5种俄罗斯方块的图形
第二部分: 右侧的字符画装饰;
第三部分: 菜单选项;

5.标题的绘制

使用color函数设置文字颜色,gotoxy函数获得光标位置
在这里插入图片描述
/**

  • 欢迎界面上方的标题
    */

    void title()
    {
    color(15); //亮白色
    gotoxy(28,3); //光标移动到这个位置
    printf(“趣 味 俄 罗 斯 方 块\n”); //输出标题
    color(11); //亮蓝色
    gotoxy(18,5); //光标移动到这个位置
    printf(“■”); //■
    gotoxy(18,6);
    printf(“■■”); //■■
    gotoxy(18,7);
    printf(“■”);//■

     color(14); 							//黄色
     gotoxy(26,6);
     printf("■■");					//■■
     gotoxy(28,7);						//  ■■
     printf("■■");
    

    //正好要错一位
    color(10); //绿色
    gotoxy(36,6); //■■
    printf(“■■”); //■■
    gotoxy(36,7);
    printf(“■■”);

     color(13); 						//粉色
     gotoxy(45,5);
     printf("■");					//■
     gotoxy(45,6);					//■
     printf("■");						//■
     gotoxy(45,7);					//■
     printf("■");
     gotoxy(45,8);
     printf("■");
    
     color(12); 						//亮红色
     gotoxy(56,6);
     printf("■");					//    ■
     gotoxy(52,7); 					//■■■
     printf("■■■");
    

    }

输入主函数main做一个简单的测试:

从头至尾输入如下代码:

#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <conio.h>

/*******定  义  全  局  变  量 *******/
int i,j,Temp,Temp1,Temp2; 	//temp,temp1,temp2用于记住和转换方块变量的值
//标记游戏屏幕的图案:2,1,0分别表示该位置为游戏边框、方块、无图案;初始化为无图案

/*******函  数  声  明 *******/
int color(int c);					//设置文字颜色
void gotoxy(int x, int y);				//光标移到指定位置
void title();                       		//欢迎界面上方的标题
void close();                      		//关闭游戏

										
										/**
 * 文字颜色函数      此函数的局限性:1、只能Windows系统下使用   2、不能改变背景颜色
 */
int color(int c)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);        //更改文字颜色
	return 0;
}


/**
 * 获取屏幕光标位置
 */
void gotoxy(int x, int y)
{
 	COORD pos;
 	pos.X = x;  	//横坐标
 	pos.Y = y;  	//纵坐标
 	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}


/**
 * 欢迎界面上方的标题
 */
void title()
{
	color(15);						//亮白色
	gotoxy(28,3);
    printf("趣  味  俄  罗  斯  方  块\n");	//输出标题
	color(11); 						//亮蓝色
	gotoxy(18,5);
    printf("■");						//■
    gotoxy(18,6); 						//■■
    printf("■■");					//■
    gotoxy(18,7);
    printf("■");

    color(14); 							//黄色
	gotoxy(26,6);
    printf("■■");					//■■
    gotoxy(28,7);						//  ■■
    printf("■■");

    color(10); 						//绿色
	gotoxy(36,6);					//■■
    printf("■■");				//■■
    gotoxy(36,7);
    printf("■■");

    color(13); 						//粉色
	gotoxy(45,5);
    printf("■");					//■
    gotoxy(45,6);					//■
	printf("■");						//■
	gotoxy(45,7);					//■
	printf("■");
	gotoxy(45,8);
	printf("■");

	color(12); 						//亮红色
	gotoxy(56,6);
    printf("■");					//    ■
    gotoxy(52,7); 					//■■■
	printf("■■■");
}


int main()
{
	title();
	return 0;
}

在这里插入图片描述

6.设置字符画装饰界面:

为了避免主界面过于死板,我们进行如下操作,使界面更加生动
打印的时候是由规律的,从上至下,自左至右,可以自行搭配颜色,甚至字符画下面打印开发者的姓名和所在开发公司:

/**
 * 绘制字符花
 */
void flower()
{
	gotoxy(66,11);   	//确定屏幕上要输出的位置
	color(12);			//设置颜色
	printf("(_)");  		//红花上边花瓣

	gotoxy(64,12);
	printf("(_)");      //红花左边花瓣

	gotoxy(68,12);
	printf("(_)");      //红花右边花瓣

	gotoxy(66,13);
	printf("(_)");      //红花下边花瓣

	gotoxy(67,12);      //红花花蕊
	color(6);
	printf("@");
	
	gotoxy(72,10);
	color(13);
	printf("(_)");      //粉花左边花瓣

	gotoxy(76,10);
	printf("(_)");      //粉花右边花瓣

	gotoxy(74,9);
	printf("(_)");      //粉花上边花瓣
	
	gotoxy(74,11);
	printf("(_)");      //粉花下边花瓣
	
	gotoxy(75,10);
	color(6);
	printf("@");        //粉花花蕊
	
	gotoxy(71,12);
	printf("|");      	//两朵花之间的连接

	gotoxy(72,11);
	printf("/");      	//两朵花之间的连接

	gotoxy(70,13);
	printf("\\|");     //注意、\为转义字符。想要输入\,必须在前面需要转义

	gotoxy(70,14);
	printf("`|/");

	gotoxy(70,15);
	printf("\\|");

	gotoxy(71,16);
	printf("| /");

	gotoxy(71,17);
	printf("|");
	
	gotoxy(67,17);
	color(10);
	printf("\\\\\\\\");      //草地
	gotoxy(73,17);
	printf("//");

	gotoxy(67,18);
	color(2);
	printf("^^^^^^^^");
	
	gotoxy(65,19);			
	color(5);
	printf("哈 尔 滨 工 业 大 学");	//公司名称
	
	gotoxy(68,20);
	printf("张 一 博");			//开发者的名字,读者练习时,可以换成自己的名字
}

效果图如下所示
在这里插入图片描述
输入如下测试代码,要注意自定义函数的位置,如果自定义函数在main函数之前定义的,则无需在main函数之中声明,直接调用即可,如果是在main函数之后定义的,则需要在main函数之中在此定义:

#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <conio.h>

/*******定  义  全  局  变  量 *******/
int i,j,Temp,Temp1,Temp2; 	//temp,temp1,temp2用于记住和转换方块变量的值
//标记游戏屏幕的图案:2,1,0分别表示该位置为游戏边框、方块、无图案;初始化为无图案

/*******函  数  声  明 *******/
int color(int c);					//设置文字颜色
void gotoxy(int x, int y);				//光标移到指定位置
void title();                       		//欢迎界面上方的标题
void close();                      		//关闭游戏

										
										/**
 * 文字颜色函数      此函数的局限性:1、只能Windows系统下使用   2、不能改变背景颜色
 */
int color(int c)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);        //更改文字颜色
	return 0;
}


/**
 * 获取屏幕光标位置
 */
void gotoxy(int x, int y)
{
 	COORD pos;
 	pos.X = x;  	//横坐标
 	pos.Y = y;  	//纵坐标
 	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}


/**
 * 欢迎界面上方的标题
 */
void title()
{
	color(15);						//亮白色
	gotoxy(28,3);
    printf("趣  味  俄  罗  斯  方  块\n");	//输出标题
	color(11); 						//亮蓝色
	gotoxy(18,5);
    printf("■");						//■
    gotoxy(18,6); 						//■■
    printf("■■");					//■
    gotoxy(18,7);
    printf("■");

    color(14); 							//黄色
	gotoxy(26,6);
    printf("■■");					//■■
    gotoxy(28,7);						//  ■■
    printf("■■");

    color(10); 						//绿色
	gotoxy(36,6);					//■■
    printf("■■");				//■■
    gotoxy(36,7);
    printf("■■");

    color(13); 						//粉色
	gotoxy(45,5);
    printf("■");					//■
    gotoxy(45,6);					//■
	printf("■");						//■
	gotoxy(45,7);					//■
	printf("■");
	gotoxy(45,8);
	printf("■");

	color(12); 						//亮红色
	gotoxy(56,6);
    printf("■");					//    ■
    gotoxy(52,7); 					//■■■
	printf("■■■");
}

void flower()
{
	gotoxy(66,11);   	//确定屏幕上要输出的位置
	color(12);			//设置颜色
	printf("(_)");  		//红花上边花瓣

	gotoxy(64,12);
	printf("(_)");      //红花左边花瓣

	gotoxy(68,12);
	printf("(_)");      //红花右边花瓣

	gotoxy(66,13);
	printf("(_)");      //红花下边花瓣

	gotoxy(67,12);      //红花花蕊
	color(6);
	printf("@");
	
	gotoxy(72,10);
	color(13);
	printf("(_)");      //粉花左边花瓣

	gotoxy(76,10);
	printf("(_)");      //粉花右边花瓣

	gotoxy(74,9);
	printf("(_)");      //粉花上边花瓣
	
	gotoxy(74,11);
	printf("(_)");      //粉花下边花瓣
	
	gotoxy(75,10);
	color(6);
	printf("@");        //粉花花蕊
	
	gotoxy(71,12);
	printf("|");      	//两朵花之间的连接

	gotoxy(72,11);
	printf("/");      	//两朵花之间的连接

	gotoxy(70,13);
	printf("\\|");     //注意、\为转义字符。想要输入\,必须在前面需要转义

	gotoxy(70,14);
	printf("`|/");

	gotoxy(70,15);
	printf("\\|");

	gotoxy(71,16);
	printf("| /");

	gotoxy(71,17);
	printf("|");
	
	gotoxy(67,17);
	color(10);
	printf("\\\\\\\\");      //草地
	gotoxy(73,17);
	printf("//");

	gotoxy(67,18);
	color(2);
	printf("^^^^^^^^");
	
	gotoxy(65,19);			
	color(5);
	printf("哈 尔 滨 工 业 大 学");	//公司名称
	
	gotoxy(68,20);
	printf("张 一 博");			//开发者的名字,读者练习时,可以换成自己的名字
}

int main()
{
	title();
	flower();

	return 0;
}

注意:1)在flower函数之中大量出现了转义字符,\n,\t在编程的时候是常见的,”\“被称为转移字符,它之后的字母,已经不再是其本来ASCII码的意思了;
2)如果要输出“\”本身,则需要在\的后面再加一个\,因为\本身代表转义,前面再加一个\就是转义的转义,也就是\本身了

7.设计菜单选项的边框

通过两个for循环语句即可设计出边框
在这里插入图片描述

/**
 * 菜单选项边框
 */
void welcom()
{
	int n;
	int i,j = 1;
	color(14);          								//黄色边框
	for (i = 9; i <= 20; i++)   							//循环y轴坐标,打印输出上下边框===
	{
		for (j = 15; j <= 60; j++)  					//循环x轴坐标,打印输出左右边框||
		{
			gotoxy(j, i);
			if (i == 9 || i == 20) printf("=");			//输出上下边框===
			else if (j == 15 || j == 59) printf("||");	//输出左右边框||
		}
	}
}


#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <conio.h>

/*******定  义  全  局  变  量 *******/
int i,j,Temp,Temp1,Temp2; 	//temp,temp1,temp2用于记住和转换方块变量的值
//标记游戏屏幕的图案:2,1,0分别表示该位置为游戏边框、方块、无图案;初始化为无图案

/*******函  数  声  明 *******/
int color(int c);					//设置文字颜色
void gotoxy(int x, int y);				//光标移到指定位置
void title();                       		//欢迎界面上方的标题
void close();                      		//关闭游戏

										
										/**
 * 文字颜色函数      此函数的局限性:1、只能Windows系统下使用   2、不能改变背景颜色
 */
int color(int c)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);        //更改文字颜色
	return 0;
}


/**
 * 获取屏幕光标位置
 */
void gotoxy(int x, int y)
{
 	COORD pos;
 	pos.X = x;  	//横坐标
 	pos.Y = y;  	//纵坐标
 	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}

/**
 * 菜单选项边框
 */
void welcom()
{
	int n;
	int i,j = 1;
	color(14);          								//黄色边框
	for (i = 9; i <= 20; i++)   							//循环y轴坐标,打印输出上下边框===
	{
		for (j = 15; j <= 60; j++)  					//循环x轴坐标,打印输出左右边框||
		{
			gotoxy(j, i);
			if (i == 9 || i == 20) printf("=");			//输出上下边框===
			else if (j == 15 || j == 59) printf("||");	//输出左右边框||
		}
	}
}



int main()
{
	welcom();
	return 0;
}
8.设计菜单选项值中的文字(是welcom()函数的另一部分)
/**
 * 菜单选项的文字
 */
	color(12);				//设置字体颜色为红色
	gotoxy(25, 12);				//设置显示位置
	printf("1.开始游戏");			//输出文字“1.开始游戏”
	gotoxy(40, 12);
	printf("2.按键说明");
	gotoxy(25, 17);
	printf("3.游戏规则");
	gotoxy(40, 17);
	printf("4.退出");
	gotoxy(21,22);
	color(3);
	printf("请选择[1 2 3 4]:[ ]\b\b");
	color(14);
    scanf("%d", &n);    			//输入选项
    switch (n)
    {
    	case 1: 					//输入1
    		system("cls");			//清屏
        	   break;
    	case 2: 					//输入2
        	break;
    	case 3: 					//输入3
        	break;
    	case 4: 					//输入4
        	break;
    }
}

最终效果图!!!

在这里插入图片描述

最终测试代码发布!!!

#include <stdio.h>
#include <time.h>
#include <windows.h>
#include <conio.h>

/*******定  义  全  局  变  量 *******/
int i,j,Temp,Temp1,Temp2; 	//temp,temp1,temp2用于记住和转换方块变量的值
//标记游戏屏幕的图案:2,1,0分别表示该位置为游戏边框、方块、无图案;初始化为无图案

/*******函  数  声  明 *******/
int color(int c);					//设置文字颜色
void gotoxy(int x, int y);				//光标移到指定位置
void title();                       		//欢迎界面上方的标题
void close();                      		//关闭游戏

										
										/**
 * 文字颜色函数      此函数的局限性:1、只能Windows系统下使用   2、不能改变背景颜色
 */
int color(int c)
{
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), c);        //更改文字颜色
	return 0;
}


/**
 * 获取屏幕光标位置
 */
void gotoxy(int x, int y)
{
 	COORD pos;
 	pos.X = x;  	//横坐标
 	pos.Y = y;  	//纵坐标
 	SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), pos);
}

/**
 * 菜单选项边框
 */
void welcom()
{
	int n;
	int i,j = 1;
	color(14);          								//黄色边框
	for (i = 9; i <= 20; i++)   							//循环y轴坐标,打印输出上下边框===
	{
		for (j = 15; j <= 60; j++)  					//循环x轴坐标,打印输出左右边框||
		{
			gotoxy(j, i);
			if (i == 9 || i == 20) printf("=");			//输出上下边框===
			else if (j == 15 || j == 59) printf("||");	//输出左右边框||
		}
	}
 /**
     * 菜单选项的文字
     */
    	color(12);				//设置字体颜色为红色
    	gotoxy(25, 12);				//设置显示位置
    	printf("1.开始游戏");			//输出文字“1.开始游戏”
    	gotoxy(40, 12);
    	printf("2.按键说明");
    	gotoxy(25, 17);
    	printf("3.游戏规则");
    	gotoxy(40, 17);
    	printf("4.退出");
    	gotoxy(21,22);
    	color(3);
    	printf("请选择[1 2 3 4]:[ ]\b\b");
    	color(14);
        scanf("%d", &n);    			//输入选项
        switch (n)
        {
        	case 1: 					//输入1
        		system("cls");			//清屏
            	   break;
        	case 2: 					//输入2
            	break;
        	case 3: 					//输入3
            	break;
        	case 4: 					//输入4
            	break;
        }

}

 /**
     * 欢迎界面上方的标题
     */
    void title()
    {
    	color(15);						//亮白色
    	gotoxy(28,3);
        printf("趣  味  俄  罗  斯  方  块\n");	//输出标题
    	color(11); 						//亮蓝色
    	gotoxy(18,5);
        printf("■");						//■
        gotoxy(18,6); 						//■■
        printf("■■");					//■
        gotoxy(18,7);
        printf("■");
    
        color(14); 							//黄色
    	gotoxy(26,6);
        printf("■■");					//■■
        gotoxy(28,7);						//  ■■
        printf("■■");
    
        color(10); 						//绿色
    	gotoxy(36,6);					//■■
        printf("■■");				//■■
        gotoxy(36,7);
        printf("■■");
    
        color(13); 						//粉色
    	gotoxy(45,5);
        printf("■");					//■
        gotoxy(45,6);					//■
    	printf("■");						//■
    	gotoxy(45,7);					//■
    	printf("■");
    	gotoxy(45,8);
    	printf("■");
    
    	color(12); 						//亮红色
    	gotoxy(56,6);
        printf("■");					//    ■
        gotoxy(52,7); 					//■■■
    	printf("■■■");
    }
    
    void flower()
    {
    	gotoxy(66,11);   	//确定屏幕上要输出的位置
    	color(12);			//设置颜色
    	printf("(_)");  		//红花上边花瓣
    
    	gotoxy(64,12);
    	printf("(_)");      //红花左边花瓣
    
    	gotoxy(68,12);
    	printf("(_)");      //红花右边花瓣
    
    	gotoxy(66,13);
    	printf("(_)");      //红花下边花瓣
    
    	gotoxy(67,12);      //红花花蕊
    	color(6);
    	printf("@");
    	
    	gotoxy(72,10);
    	color(13);
    	printf("(_)");      //粉花左边花瓣
    
    	gotoxy(76,10);
    	printf("(_)");      //粉花右边花瓣
    
    	gotoxy(74,9);
    	printf("(_)");      //粉花上边花瓣
    	
    	gotoxy(74,11);
    	printf("(_)");      //粉花下边花瓣
    	
    	gotoxy(75,10);
    	color(6);
    	printf("@");        //粉花花蕊
    	
    	gotoxy(71,12);
    	printf("|");      	//两朵花之间的连接
    
    	gotoxy(72,11);
    	printf("/");      	//两朵花之间的连接
    
    	gotoxy(70,13);
    	printf("\\|");     //注意、\为转义字符。想要输入\,必须在前面需要转义
    
    	gotoxy(70,14);
    	printf("`|/");
    
    	gotoxy(70,15);
    	printf("\\|");
    
    	gotoxy(71,16);
    	printf("| /");
    
    	gotoxy(71,17);
    	printf("|");
    	
    	gotoxy(67,17);
    	color(10);
    	printf("\\\\\\\\");      //草地
    	gotoxy(73,17);
    	printf("//");
    
    	gotoxy(67,18);
    	color(2);
    	printf("^^^^^^^^");
    	
    	gotoxy(65,19);			
    	color(5);
    	printf("哈 尔 滨 工 业 大 学");	//公司名称
    	
    	gotoxy(68,20);
    	printf("张 一 博");			//开发者的名字,读者练习时,可以换成自己的名字
    }
    
    int main()
    {
    	title();
    	flower();
		welcom();
    	return 0;
    }
  • 5
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
int CIBrick::shiftLeft (CBin*bin) { unsigned int posX; posX=getPosX(); posX=posX-1; setPosX(posX); if(checkCollision(bin)==0) { setPosX(posX+1); return 0; } return 1; } int CIBrick::shiftDown (CBin*bin) { unsigned int posY; posY=getPosY(); posY=posY+1; setPosY(posY); if (checkCollision(bin)==0) { setPosY(posY-1); return 0; } return 1; } int CIBrick::shiftRight (CBin*bin) { unsigned int posX; posX =getPosX(); posX=posX+1; setPosX(posX); if(checkCollision(bin)==0) { setPosX(posX-1); return 0; } return 1; } int CIBrick::rotateClockwise(CBin*bin) { unsigned int orientation,oldOrientation; orientation=getOrientation(); oldOrientation=orientation; if (orientation==3) orientation=0; else orientation=orientation+1; setOrientation(orientation); if(checkCollision(bin)==0) { setOrientation(oldOrientation); return 0; } return 1; } int CIBrick::checkCollision(CBin*bin) { unsigned int width; unsigned int height; unsigned char**image; unsigned int orientation; unsigned int posX; unsigned int posY; width=bin->getWidth(); height=bin->getHeight(); image=new unsigned char* [height]; for(unsigned int i=0;i<height;i++) { image[i]=new unsigned char[width]; } bin->getImage(image); orientation=getOrientation(); posX=getPosX(); posY=getPosY(); if (orientation==0) { if((posX+1<1)||(posX>width-1)||(posY<1)||(posY+2>height-1)) return 0; if((image[posY-1][posX]!=0)||(image[posY][posX]!=0)||(image[posY+1][posX]!=0)||(image[posY+2][posX]!=0)) return 0; } if(orientation==1) { if ((posX<2)||(posX+1>width-1)||(posY+1)<1||(posY>height-1)) return 0; if ((image[posY][posX-2]!=0)||(image[posY][posX-1]!=0)||(image[posY][posX]!=0)||(image[posY][posX+1]!=0)) return 0; } if (orientation==2) { if((posX+1<1)||(posX>width-1)||(posY<2)||(posY+1>height-1)) return 0; if ((image[posY-2][posX]!=0)||(image[posY-1][posX]!=0)||(image[posY][posX]!=0)||(image[posY+1][posX]!=0)) return 0; } if (orientation==3) { if ((posX<1)||(posX+2>width-1)||(posY+1<1)||(posY>height-1)) return 0; if ((image[posY][posX-1]!=0)||(image[posY][posX]!=0)||(image[posY][posX+1]!=0)||(image[posY][posX+2]!=0)) return 0; } return 1; } void CIBrick::operator>>(unsigned char** binImage) { unsigned int orientation ; unsigned int posX; unsigned int posY; unsigned char colour; posX=getPosX(); posY=getPosY(); orientation=getOrientation(); colour=getColour(); if(orientation==0) { binImage[posY-1][posX]=colour; binImage[posY][posX]=colour; binImage[posY+1][posX]=colour; binImage[posY+2][posX]=colour; } if(orientation==1) { binImage[posY][posX-2]=colour; binImage[posY][posX-1]=colour; binImage[posY][posX]=colour; binImage[posY][posX+1]=colour; } if (orientation==2) { binImage[posY-2][posX]=colour; binImage[posY-1][posX]=colour; binImage[posY][posX]=colour; binImage[posY+1][posX]=colour; } if (orientation==3) { binImage[posY][posX-1]=colour; binImage[posY][posX]=colour; binImage[posY][posX+1]=colour; binImage[posY][posX+2]=colour; } } void CIBrick::putAtTop(unsigned int newOrient,unsigned int newPosX) { setPosX(newPosX); setOrientation(newOrient); switch (newOrient) { case 0: setPosY(1);break; case 1: setPosY(0);break; case 2: setPosY(2);break; case 3: setPosY(0);break; } } int CLBrick::shiftLeft (CBin*bin) { unsigned int posX; posX=getPosX(); posX=posX-1; setPosX(posX);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值