军棋规则如何扛军旗进大本营(军棋规则扛军旗需要扛到大本营吗)

每天一个C语言小项目,提高你的编程能力!这是一款由shareli创作的军旗游戏。游戏的具体规则如下:棋盘尺寸:6×6。棋子总数:36。敌对双方:红色和蓝色。棋类

每天一个C语言小项目,提高你的编程能力!

军棋规则如何扛军旗进大本营(军棋规则扛军旗需要扛到大本营吗)

这是一款由shareli创作的军旗游戏。游戏的具体规则如下:

棋盘尺寸:6×6。

棋子总数:36。

敌对双方:红色和蓝色。

棋类:红棋(红方操作,14枚)、蓝棋(蓝方操作,14枚)、紫棋(功能性棋,8枚)。

红棋(蓝棋)类型:司令、军长、师长、旅长、团长、营长、连长、班长、军旗、工兵×2、炸弹×2。

紫棋类型:地雷× 4,变棋× 4。

【规则说明】

1.指挥官是最大的,工程师是最小的,大的吃小的,同样的会互相收场。炸弹可以炸掉紫棋和敌人除军旗以外的所有棋(炸弹也会消失)。

2.工程师可以挖矿,挖矿后可以互相扛着对方的棋去换(挖矿越多越厉害)。

3.人物的棋可以通过吃来改变。吃了之后可以成为工程师~队长之一,有一定几率成为隐藏BOSS。

4.人物棋可以自杀(算一次手术)。

5.棋手进行了一次有效操作后,另一个棋手再下一盘棋(边框颜色表显示当前棋手)。

6.一枚棋子(军旗除外)被摧毁,就算输了;同时,都不是,那就画。

【执棋方能进行的操作】

1.开卒(算一次操作)。

2.进攻。

3.动起来。

4.工程师(挖过矿的)扛着旗子。

5.吃变形卡。

6.自杀。

【实施游戏操作说明(鼠标操作)】

1.选择要打开棋子的区域,然后单击。

2~5.单击选择主动方(棋子的边界将变为绿色),然后单击选择被动方。

6.选择你自己的棋子和鼠标中键。

注意:要执行其他操作,必须先取消当前选择(右键取消)。

【人物棋等级一览(等高杀等小)】

1班,2连,3营,4团,5旅,6师,7军,8飞师,9升,9神,10仙,10。

注:“飞天、登高、神仙”都是挖矿后工程师扛旗改的。“飞升神仙”可以直线飞行,“神仙”可以满天飞。

本项目编译环境:Visual Studio 2019/2022,EasyX插件

完整的源代码如下:

# include & ltstdio.h & gt# include & ltgraphics.h & gt# include & lttime.h & gt#defineCHESIZE40//棋盘大小不能随意调整# define setx 170 # define sety 350//重置原点typedef enum//要使用的棋子ID {司、君、师、吕、团、应、连、排、班、公、非、超、扎、齐、雷、边、鲜、生、申} CHESSIDtypenum//攻击类型{comatt,preatt,noatt } ATTSTYLEtypenum//当前玩家和棋子的{蓝、红、白}队;type enum//选中和未选中{alchoose,unchoose } CHOOSESTATEtypenenum//区域状态{未知、空、存在}状态。typef struct//坐标{ int x;int y;} COORtype struct//棋子{ CHESSID//棋子的iditpower//卒队队伍的水平;//关联方char * image//这个棋子的图片,考虑到运行问题,这个程序用words代替int scoopc//工程师是挖的矿数}棋;type struct//area { COOR crdld;//棋棋,区域的左下坐标;//区域的典当状态STATE;//区域状态}区域;type struct//用户的选择信息{ int I;int j;选择州/省;//选择状态}选择;形象形象;面积面积[6][6];//定义棋盘大小CHESS data CHESS[19];//几种基本的棋子类型选择选择;//用户选择信息MOUSEMSG mmsg//鼠标信息团队用户;//棋手int棋盘= 0;//是否锁板int I;//当前鼠标所在区域的坐标int j;char * str[]= { & # 34;工作& # 34;,"班& # 34;,"Row & # 34,"甚至& # 34;,"坎普& # 34;,"集团& # 34;,"旅& # 34;,"司& # 34;,"军队& # 34;,"司& # 34;,"国际象棋& # 34;,"弗里德& # 34;,"改变& # 34;,"雷& # 34;,"飞& # 34;,"超级& # 34;,"L & # 34,"上帝& # 34;,"仙女& # 34;};void init();void initchesbute();//给初始化棋子的基本参数void init value();void draw board();//画棋盘void rando marr(int *);//实现象棋空判的随机排列();void getpreij();//获取当前鼠标区域的坐标int check ij();//当鼠标在void open()区域时检查;//打开area int whe move();//确定void move()是否可以移动;//Move int judge unknow();//检测当前未打开棋子的数量att style wheat tack();//确定是否可以攻击void kill();//杀死当前选中的棋void Kill self();//自杀void perishtogether();//同归于尽void get team();//用于在改变棋子类型时,将void userchange()赋给棋子所属的一方;//交换棋手void judge bunko();//判断输赢void choose area();//选中区域void cancel choose();//取消选中void change();//变成void bluewin();//蓝色胜利void redwin();//红色胜利void game help();//规则描述void quit();//退出游戏作废和平();//draw void投降();//投降void resetches board();//Reset//以下函数是判断棋子ATTSTYLE judgegong()的攻击类型;//法官工程师ATTSTYLE Judge com();//判决普通字符ATTSTYLE judgezha();//判断炸弹void main()//主函数{ init();while(true){ mmsg = GetMouseMsg();getpreij();if(mmsg . umsg = = WM _ lbuttondown)//点击左键{ judge();} else if(mmsg . umsg = = WM _ rbuttondown & & choose . state = = al choose)//右键单击{ cancel choose();} else if(mmsg . umsg = = WM _ mbutton down & & choose . state = = al choose & & area[choose . I][choose . j]. chess . id!= zha) //点击中间按钮{ kill self();cancel choose();user change();judge bunko();}}}void init(){initgraph(640,480);setorigin(RESETX,RESETY);//重置原点setaspectratio(1,-1);//设置Y轴的上半部分为正半轴draw board();init value();}void drawboard()//绘制棋盘{ int i1setlinecolor(白色);for(i1 = 0;i1 & lt7;i1++){line(i1*CHESIZE,0,i1*CHESIZE,CHESIZE * 6);} for(i1 = 0;i1 & lt7;i1++){line(0,i1*CHESIZE,CHESIZE*6,i1 * CHESIZE);}setlinecolor(白色);setfillcolor(红色);矩形(-10,-10,CHESIZE*6+10,CHESIZE * 6+10);floodfill(-1,-1,白色);矩形(7 *切齐,切齐,9 *切齐,6 *切齐);线(7 *切大小,5 *切大小,9 *切大小,5 *切大小);线(7 *切大小,4 *切大小,9 *切大小,4 *切大小);线(7 *切大小,3 *切大小,9 *切大小,3 *切大小);线(7 *切大小,2 *切大小,9 *切大小,2 *切大小);setaspectation(1,1);settextstyle(35,18,& # 34;Bold & # 34);settextcolor(红色);outtextxy(7*CHESIZE+2,-6*CHESIZE+2,& # 34;救命& # 34;);settextcolor(棕色);outtextxy(7*CHESIZE+2,-5*CHESIZE+2,& # 34;投降& # 34;);settextcolor(绿色);outtextxy(7*CHESIZE+2,-4*CHESIZE+2,& # 34;国际象棋& # 34;);settextcolor(黄色);outtextxy(7*CHESIZE+2,-3*CHESIZE+2,& # 34;重置& # 34;);settextcolor(青色);outtextxy(7*CHESIZE+2,-2*CHESIZE+2,& # 34;退出& # 34;);settextcolor(浅洋红色);settextstyle(50,20,& # 34;Bold & # 34);outtextxy(CHESIZE,-CHESIZE*8,& # 34;两国国旗& # 34;);setaspectatio(1,-1);} void initchesbute()//设置棋子的基本参数{datachess[0]。id =龚;datachess[0]。幂= 1;datachess[0]。image = str[0];datachess[0]。scoopc = 0;datachess[1]。id = bandatachess[1]。幂= 2;datachess[1]。image = str[1];datachess[1]。scoopc = 0;数据象棋[2]。id = pai数据象棋[2]。幂= 3;数据象棋[2]。image = str[2];数据象棋[2]。scoopc = 0;数据象棋[3]。id = lian数据象棋[3]。幂= 4;数据象棋[3]。image = str[3];数据象棋[3]。scoopc = 0;数据象棋[4]。id = ying数据象棋[4]。幂= 5;数据象棋[4]。image = str[4];数据象棋[4]。scoopc = 0;数据象棋[5]。id = tuan数据象棋[5]。幂= 6;数据象棋[5]。image = str[5];数据象棋[5]。scoopc = 0;数据象棋[6]。id = lv数据象棋[6]。幂= 7;数据象棋[6]。image = str[6];数据象棋[6]。scoopc = 0;数据象棋[7]。id =石;数据象棋[7]。幂= 8;数据象棋[7]。image = str[7];数据象棋[7]。scoopc = 0;数据象棋[8]。id = jun数据象棋[8]。幂= 9;数据象棋[8]。image = str[8];数据象棋[8]。scoopc = 0;数据象棋[9]。id = si数据象棋[9]。幂= 10;数据象棋[9]。image = str[9];数据象棋[9]。scoopc = 0;数据象棋[10]。id = qi数据象棋[10]。幂= 100;数据象棋[10]。image = str[10];数据象棋[10]。scoopc = 0;数据象棋[11]。id = zha数据象棋[11]。幂= 99;数据象棋[11]。image = str[11];数据象棋[11]。scoopc = 0;数据象棋[12]。id = bian数据象棋[12]。功率= 0;数据象棋[12]。image = str[12];数据象棋[12]。scoopc = 0;数据象棋[13]。id =雷;数据象棋[13]。幂= 98;数据象棋[13]。image = str[13];数据象棋[13]。scoopc = 0;数据象棋[14]。id = fei数据象棋[14]。幂= 9;数据象棋[14]。image = str[14];数据象棋[14]。scoopc = 0;数据象棋[15]。id = chao数据象棋[15]。幂= 11;数据象棋[15]。image = str[15];数据象棋[15]。scoopc = 0;数据象棋[16]。id =盛;数据象棋[16]。幂= 10;数据象棋[16]。image = str[16];数据象棋[16]。scoopc = 0;数据象棋[17]。id =沈;数据象棋[17]。幂= 11;数据象棋[17]。image = str[17];数据象棋[17]。scoopc = 0;数据象棋[18]。id =西安;数据象棋[18]。幂= 11;数据象棋[18]。image = str[18];数据象棋[18]。scoopc = 0;}void initvalue()//初始化值{ CHESS CHESS;int random[36];int计数;int i1,J1;initchesbute();randomarr(随机);for(i1 = 0;i1 & lt=11;i1++){ chess[i1]= data chess[i1];象棋[i1]。团队=红色;} chess[i1]= data chess[11];象棋[i1]。团队=红色;chess[i1+1]= data chess[0];国际象棋[i1+1]。团队=红色;for(i1 = 0;i1 & lt=11;i1++){ chess[i1+14]= data chess[i1];象棋[i1+14]。团队=蓝色;} chess[i1+14]= data chess[11];象棋[i1+14]。团队=蓝色;chess[i1+15]= data chess[0];象棋[i1+15]。团队=蓝色;for(i1 = 0;i1 & lt4;i1++){ chess[i1+28]= data chess[12];象棋[i1+28]。团队=白;chess[i1+32]= data chess[13];象棋[i1+32]。团队=白;}setfillcolor(黄色);for (count=0,i1 = 0;i1 & lt6;i1++){ for(J1 = 0;j1 & lt6;j1++,count++){area[i1][j1]。棋=棋[随机[计数]];area[i1][J1]. crdld . x = i1 * CHESIZE+1;area[i1][J1]. crdld . y = J1 * CHESIZE+1;面积[i1][j1]。state = unknowfloodfill(area[i1][j1].crdld.x,area[i1][j1].crdld.y,白色);} } user = redchoose.state = unchoose}void randomarr(int random[])//得到一个从0到36的随机排列的数{int i1,J1;int flag = 0;srand(time(NULL));random[0]= rand()% 36;for(i1 = 1;i1 & lt36;i1++){ while(1){ random[i1]= rand()% 36;for(J1 = 0;j1 & lti1;j1++){ if(random[J1]= = random[i1]){ flag = 1;打破;} } if(flag){ flag = 0;} else { break}}}}void judge()//判断当前操作{ ATTSTYLE attstyle//攻击类型getpreij();If (checkij ()) {if (area [i] [j].状态= =未知& &选择。state = = un choose)//open { open();user change();} else if (area [i] [j]。state = = empty) {if(选择。state = = al choose)//move { if(when move()){ move();cancel choose();user change();} } } else { if(choose . state = = un choose){ if(area[I][j]. chess . team = = user & & area[I][j]. chess . id!= qi)//Select { choose area();}}else{if (area[i][j].状态!= unknown)//att { att style = wheat tack();if(att style = = comatt){ kill();cancel choose();user change();} else if(att style = = preatt){ perishtogether();cancel choose();user change();} else {;} } } }如果(!当所有棋子都翻转过来时,判断未知()//{判断邦科();}}}int judgeunknow(){int i1,I2;int num = 0;for(i1 = 0;i1 & lt6;i1++){ for(I2 = 0;i2 & lt6;i2++){if (area[i1][i2]。state = = unknow){ num++;} } }返回数字;}//选择区域void choose area(){ choose . I = I;choose.j = jchoose.state = alchoosesetlinecolor(绿色);矩形(choose.i*CHESIZE,choose.j*CHESIZE,choose.i*CHESIZE+CHESIZE,choose . j * CHESIZE+CHESIZE);}//取消选中void cancel choose(){设置线条颜色(白色);矩形(choose.i*CHESIZE,choose.j*CHESIZE,choose.i*CHESIZE+CHESIZE,choose . j * CHESIZE+CHESIZE);choose.state = unchoose}//VoidgetPreij(){ I =(mmsg . x-resetx)/在当前鼠标区域定位;j =-(mmsg . y-RESETY)/CHESIZE;}//检查鼠标是否在有效区域intcheckij(){ if((I = = 7 | | I = = 8)& & j = = 5){ game help();返回0;}else if ((i==7 || i==8) && j==4){if(!lock棋盘){投降();}返回0;}else if ((i==7 || i==8) && j==3){if(!lock棋盘){ peace();}返回0;} else if((I = = 7 | | I = = 8)& & j = = 2){ resetchs board();lock棋盘= 0;返回0;} else if((I = = 7 | | I = = 8)& & j = = 1){ quit();返回0;}else{if(!lock棋盘){ if((I & gt;= 0 & & i & lt= 5 & & j & gt= 0 & & j & lt= 5 & &(mmsg . x-RESETX)& gt;0 & &-(mmsg . y-RESETY)& gt;0)){返回1;} else { return 0;} }否则{ return 0;}}}//Open操作void Open(){ setfillcolor(BLACK);floodfill(area[i][j].crdld.x,area[i][j].crdld.y,白色);setaspectation(1,1);if(area[I][j]. chess . team = = BLUE){ settextcolor(BLUE);} else if(area[I][j]. chess . team = = RED){ settextcolor(RED);}else{settextcolor(品红色);}settextstyle(35,18,& # 34;Bold & # 34);outtextxy(area[i][j].crdld.x,-area[i][j].crdld.y-CHESIZE+2,area[I][j]. chess . image);区域[i][j]。状态=存在;setaspectatio(1,-1);}//确定move(){ if(area[choose . I][choose . j]时是否可以移动int。chess . id = = Fei | | area[choose . I][choose . j]。chess . id = = sheng | | area[choose . j]= 5 | | choose . j = = j & & ABS(choose . I-I)& lt;= 5){ return 1;} else { return 0;} } else if(area[choose . I][choose . j]. chess . id = = xian){ return 1;} else { if(choose . I = = I & & ABS(choose . j-j)= = 1 | | choose . j = = j & & ABS(choose . I-I)= = 1){ return 1;} else { return 0;} } }//move void move(){ setfillcolor(BLACK);flood fill(area[choose . I][choose . j]. crdld . x,area[choose . I][choose . j]. crdld . y,绿色);setaspectation(1,1);if(area[choose . I][choose . j]. chess . id = = gong & & area[choose . I][choose . j]. chess . scoopc & gt;0){ if(area[choose . I][choose . j]. chess . team = = blue){ settextcolor(light blue);} else { settextcolor(light red);} } else { if(user = = BLUE){ settext color(BLUE);}else {settextcolor(红色);}}settextstyle(35,18,& # 34;Bold & # 34);outtextxy(area[i][j].crdld.x,-area[i][j].crdld.y-CHESIZE+2,area[choose . I][choose . j]. chess . image);area[choose.i][choose.j]。状态=空;区域[i][j]。状态=存在;区域[i][j]。国际象棋= area[choose.i][choose.j]。象棋;setaspectatio(1,-1);}//判断是否可以攻击,在att(){ if(when move()){ if(area[choose . I][choose . j])时返回攻击类型att style。chess . id = = gong){ return judge gong();} else if(area[choose . I][choose . j]. chess . id = = Zha){ return judge Zha();} else { return judge com();} } else { return noatt} }//评委工程师Att风格评委龚(){if (area [i] [j].象棋队。= white){ if(area[choose . I][choose . j]. chess . team!= area[I][j]. chess . team){ if(area[I][j]. chess . id = = gong | | area[I][j]. chess . id = = Zha){ return preatt;} else if(area[I][j]. chess . id = = qi){ if(area[choose . I][choose . j]. chess . scoopc = = 0){ return no att;} else if(area[choose . I][choose . j]. chess . scoopc = = 1){ area[choose . I][choose . j]。chess = data chess[14];get team();返回comatt} else if(area[choose . I][choose . j]. chess . scoopc = = 2){ area[choose . I][choose . j]。chess = data chess[16];get team();返回comatt} else if(area[choose . I][choose . j]. chess . scoopc = = 3){ area[choose . I][choose . j]。chess = data chess[17];get team();返回comatt}else{area[choose.i][choose.j]。chess = data chess[18];get team();返回comatt} } else { return noatt} } else { return noatt} } else { if(area[I][j]. chess . id = = lei){ area[choose . I][choose . j]. chess . scoop c++;返回comatt} else { change();返回comatt} } }//判断弹Att风格判断扎(){ if(area[choose . I][choose . j]. chess . team!= area[I][j]. chess . team){ if(area[I][j]. chess . id!= qi){ return preatt;} else { return noatt} } else { return noatt} }//判断普通人Att风格判断com () {if (area [i] [j].象棋队。= white){ if(area[choose . I][choose . j]. chess . team!= area[I][j]. chess . team){ if(area[choose . I][choose . j]. chess . power = = area[I][j]. chess . power | | area[I][j]. chess . id = = Zha){ return preatt;} else if(area[choose . I][choose . j]. chess . power & gt;area[I][j]. chess . power){ return comatt;} else { return noatt} } else { return noatt} } else { if(area[I][j]. chess . id = = lei){ return no att;} else { change();返回comatt} } }//成为void change(){ int x;x = rand()% 50;if(x = = 6){ area[choose . I][choose . j]。chess = data chess[15];get team();} else { x = rand()% 4;if(x = = 3){ x = rand()% 2;if(x = = 0){ area[choose . I][choose . j]。chess = data chess[7];}else{area[choose.i][choose.j]。chess = data chess[8];} get team();} else { x = rand()% 6;area[choose.i][choose.j]。chess = data chess[x];get team();} } }//赋值void get team(){ if(user = = blue){ area[choose . I][choose . j]。chess.team =蓝色;} else { area[choose . I][choose . j]. chess . team = red;} }//杀死对方void Kill(){ move();}//自杀void kill self(){设置填充颜色(黑色);flood fill(area[choose . I][choose . j]. crdld . x,area[choose . I][choose . j]. crdld . y,绿色);area[choose.i][choose.j]。状态=空;}//同归于尽void同归于尽(){设置填充颜色(黑色);cancel choose();flood fill(area[choose . I][choose . j]. crdld . x,area[choose . I][choose . j]. crdld . y,白色);floodfill(area[i][j].crdld.x,area[i][j].crdld.y,白色);area[choose.i][choose.j]。状态=空;区域[i][j]。状态=空;}//切换棋手Void User Change(){ if(User = = blue){ User = red;setfillcolor(红色);floodfill(-1,-1,白色);} else { user = bluesetfillcolor(蓝色);floodfill(-1,-1,白色);} }//判断输赢void judgebunko() {int i1,J1;int num1 = 0,num 2 = 0;for(i1 = 0;i1 & lt6;i1++){ for(J1 = 0;j1 & lt6;j1++){if (area[i1][j1]。状态!= empty){ if(area[i1][J1]. chess . team = = red & & area[i1][J1]. chess . id!= qi){ num 1++;} else if(area[i1][J1]. chess . team = = blue & & area[i1][J1]. chess . id!= qi){ num 2++;}}}}if (num1==0 && num2!= 0){ bluewin();}if (num2==0 && num1!= 0){ redwin();} if(num 1 = = 0 & & num 2 = = 0){ peace();} }//Blue wins void bluewin(){ Set Aspect Ratio(1,1);settextcolor(蓝色);settextstyle(50,20,& # 34;Bold & # 34);outtextxy(CHESIZE,-CHESIZE*8,& # 34;方胜利& # 34;);setaspectatio(1,-1);setfillcolor(蓝色);floodfill(-1,-1,白色);lock棋盘= 1;//锁定棋盘}//红胜Voidredwin () {set aspect ratio (1,1);settextcolor(红色);settextstyle(50,20,& # 34;Bold & # 34);outtextxy(CHESIZE,-CHESIZE*8,& # 34;方胜利& # 34;);setaspectatio(1,-1);setfillcolor(红色);floodfill(-1,-1,白色);lock棋盘= 1;}//draw void peace(){ setaspectratio(1,1);settextcolor(绿色);settextstyle(50,20,& # 34;Bold & # 34);outtextxy(CHESIZE,-CHESIZE*8,& # 34;握手言和& # 34;);setaspectatio(1,-1);setfillcolor(绿色);floodfill(-1,-1,白色);lock棋盘= 1;}//投降作废投降(){ if(user = = blue){ red win();} else { bluewin();} }//重置void重置棋盘(){ clear device();init();}//游戏描述void游戏help () {getimage (& image,-10,-10,500,350);clear device();setorigin(50,0);setaspectation(1,1);settextcolor(红色);settextstyle(14,0,& # 34;Bold & # 34);outtextxy(-50,0,& # 34;注意:点击鼠标左键返回游戏界面& # 34;);settextcolor(白色);settextstyle(24,0,& # 34;Bold & # 34);outtextxy(230,5,& # 34;游戏描述& # 34;);settextstyle(12,0,& # 34;宋& # 34;);outtextxy(0,35,& # 34;棋盘尺寸:6 * 6;棋子总数:36;两边:红色、蓝色& # 34;);outtextxy(0,60,& # 34;棋类:红棋(红方操作,14枚)、蓝棋(蓝方操作,14枚)、紫棋(功能棋,8枚)& # 34;);outtextxy(0,85,& # 34;红棋(蓝棋)类型:司令、军长、师长、旅长、旅长、团长、营长、连长、班长、军旗、工兵*2、炸弹*2。");outtextxy(0,100,& # 34;紫棋类型:地雷*4,变棋*4。注意:& # 39;*'表示象棋后面的数字,没有注只有一& # 34;);outtextxy(0,125,& # 34;说明:1。指挥官是最大的,工程师是最小的,大的吃小的,同样的会互相收场,& # 34;);outtextxy(text width(& # 34;描述:1。"), 140, "炸弹可以炸掉紫棋和敌人除军旗以外的所有棋(炸弹也会消失)。");outtextxy(text width(& # 34;描述:& # 34;), 155, "2.工程师可以挖矿,挖矿后可以互相扛棋,自己改造(挖矿越多越厉害)。");outtextxy(text width(& # 34;描述:& # 34;), 170, "3.人物的棋可以通过吃来改变。吃了之后可以成为工程师~队长之一,有一定几率成为隐藏BOSS。");outtextxy(text width(& # 34;描述:& # 34;), 185, "4.人物棋可以自杀(算一次手术)。");outtextxy(text width(& # 34;描述:& # 34;), 200, "5.棋手进行了一次有效的操作后,另一个棋手再下一盘棋(边框颜色表中的当前棋手)。");outtextxy(text width(& # 34;描述:& # 34;), 215, "6.一枚棋子(军旗除外)被摧毁,就算输了;同时,如果都没有,那就是平局。");outtextxy(0,240,& # 34;棋手可以进行的操作:操作1:打开棋子(算一个操作)。");outtextxy(text width(& # 34;棋手可以执行的操作:& # 34;), 255, "2:攻击。");outtextxy(text width(& # 34;棋手可以执行的操作:& # 34;), 270, "3:移动。");outtextxy(text width(& # 34;棋手可以执行的操作:& # 34;), 285, "操作:工程师(挖过矿的)扛旗。");outtextxy(text width(& # 34;棋手可以执行的操作:& # 34;), 300, "操作:吃变身卡。");outtextxy(text width(& # 34;棋手可以执行的操作:& # 34;), 315, "行动六:自杀。");outtextxy(0,340,& # 34;实现游戏的操作说明(鼠标操作):操作一:选择要打开的棋子所在的区域,点击。");outtextxy(text width(& # 34;游戏操作实现说明(鼠标操作):& # 34;), 355, "操作2~5:点击选择主动方(棋子边框会变绿)& # 34;);outtextxy(text width(& # 34;实现游戏的操作说明(鼠标操作):实现操作2 ~ 5:& # 34;), 370, "然后点击选择被动方。");outtextxy(text width(& # 34;游戏操作实现说明(鼠标操作):& # 34;), 385, "操作6:选择自己的棋子,鼠标中键。");settextcolor(红色);outtextxy(text width(& # 34;游戏操作实现说明(鼠标操作):& # 34;), 400,"注意:要执行其他操作,必须先取消当前选择(右键取消)& # 34;);settextcolor(白色);setlinecolor(白色);线(-30,420,570,420);outtextxy(0,425,& # 34;棋级列表(等高同杀):1班2班3连4营5团6旅7师& # 34;);outtextxy(text width(& # 34;国际象棋关卡列表(等高,等杀等。): "), 440, "8飞8师9升9神10仙10 & # 34;);outtextxy(0,455,& # 34;注意:& # 39;飞& # 39;'L & # 39'上帝& # 39;'仙女& # 39;都被挖矿后扛着旗子的工程师改了,& # 39;飞& # 39;'L & # 39'上帝& # 39;可以直线飞行,& # 39;仙女& # 39;可以满天飞& # 34;);while(true){ mmsg = GetMouseMsg();if(mmsg . umsg = = WM _ LBUTTONDOWN){ break;} } clear device();setorigin(RESETX,RESETY);setaspectatio(1,-1);putimage(-10,-10,& image);}//退出游戏void Quit(){ closegraph();}我们去试试吧!

除此之外,我也和大家分享一下我搜集到的其他资源,从最基础的教程到C语言C++项目案例,帮助大家克服学习C语言的困难!

学习分享编程书籍:

学习视频分享:

[36]

整理(多年学习源代码,项目实战视频,项目笔记,基础入门教程)最重要的是可以在群里交流,提出编程问题!

如果你对C/C++感兴趣,可以关注边肖,后台私信我:【编程通信】我们一起学习吧!可以获取一些C/C++项目学习视频!你已经设置了关键词自动回复,自动收到就好!

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。

作者:美站资讯,如若转载,请注明出处:https://www.meizw.com/n/357347.html

发表回复

登录后才能评论