- 时间:2021-02-11 14:12 编辑:金门王 来源:蚂蚁资源 阅读:150
- 扫一扫,手机访问
摘要:大家好,今天给大家介绍关于游戏 源码(传奇手游源码论坛社区)的相关内容,详细讲解用C++编写的小游戏源代码,c++编程小游戏代码,能制作游戏的软件等,希望可以帮助到您。
用C++编写的小游戏源代码,50的大小:#包含#包含#包括#包括使用命名空间std; const int n = 15; // 15 * 15 perrings const char castboarblag =''; //棋盘logo const char flag1 ='o'; //播放器1或计算机国际象棋标志const char flag2 ='x'; //播放器2棋子符号键入型struct坐标//坐标类{int x; //表示行y; //表示}坐标;类古邦/ {initchessboard(); //播放器1或计算机坐标POS2; //播放器2int n = 0; //播放器2int n = 0;虽然(1){int mode = choicemode();虽然(1){if(mode == 1)//计算机vs播放器{compoinchess(pos1,flag1); //计算机国际象棋(GetVictory(POS1,0,FLAG1)= = 1)// 0表示计算机,这意味着胜利; Playchess(POS2,2,Flag2); //播放器2播放国际象棋,如果(getvictory(pOS2,2,FLAG2))// 2显示播放器2Break;} else //播放器1vs播放器2 {playchess(pos1,1,flag1); //播放器1 cour如果(getVictory(pos1,1,flag1))// 1表示玩家1break; Playches,(POS2,2,Flag2); //玩家2播放国际象棋(GetVictory(POS2,2,Flag2))// 2表示玩家2Break; cout> c; if(c =='n')中断;受保护:int cot choicemode()//选择模式{int i = 0;系统(“CLS”); //系统调用,清除屏幕initchessboard(); //重新初始化检查板COUT> I; if(i == 0)//选择0出口退出(1); if(i == 1 || i == 2)返回i; cout> pos.x >> pos.y; if(判断值(POS)== 1)//协调合法性休息; cout 0 && pos.x 0 && pos.y 0? begin =(pos.y - 4):begin = 1; (pos.y + 4)> n? end = n:end =(pos.y + 4); for(int i = pos.x,j = begin; j + 4 0?begin =(pos.x - 4):开始= 1; (pos.x + 4)> n? end = n:end =(pos.x + 4); for(int j = pos.y,i = begin; i + 4 pos.y?len = pos .y - 1:len = pos。xi - 1;如果(len> 4)len = 4; begin = pos。 X - Len; //水平开始位置Begin1 = POS.Y - Len; //纵向位置POS.x> POS.Y?LEN =(N - POS.X):LEN =(N - POS.Y);如果(Len> 4)Len = 4; end = POS.x + Len; // END1 = POS.Y + LEN; // long(int i = begin,j = begin1;(i + 4(n - pos.y) ))?len =(n - pos.y):len = pos.x - 1;如果(len> 4)len = 4; begin = pos.x - len; //地平线开始位置begin1 = pos。y + len; //纵向位置(n - pos.x)>(pos.y-1)?len =(pos.y - 1):len =(n - pos.x);如果len> 4)len = 4 ; end = pos.x + len; ////////////.y - len; // long(int i = begin,j = begin1; i + 4 = end1); ++ i,--j){if( _Chessboard [i] [j] ==标志&& _棋盘[i + 1] [j - 1] == flag && _棋盘[i + 2] [j - 2] == flag && _棋盘[i + 3] [j - 3] ==标志&& _棋盘[i + 4] [j - 4] ==标志)返回1;} for(int i = 1; i
c++编程小游戏代码,以下是贪婪的蛇源代码:#include #include #include #include #include #dflude n 21] #dfine n 21 void gotoxy(int x,int y)//位置函数{Coord POS; pos.x = 2 * x; pos.y = y; setConsoleCurresposition(getstdandle(std_output_handle),pos); void颜色(int a)//颜色函数{setconsoletextatttribute(getstdhandle(std_output_handle),a); void init(intaple [2])//初始化函数(初始化墙,显示信息,Apple){int i,j; //初始化墙壁int壁[n + 2] [n + 2] = {0}}; for(i = 1;我<=N;i++){for(j=1;j<=N;j++)wall[i][j]=1;}color(11);for(i=0;i 0; i - ){蛇[i] [0] =蛇[I-1] [0];蛇[i] [1] =蛇[I-1] [1]; gotoxy(蛇[i] [0],蛇[i] [1]);颜色(14); cout <<“★”<< endl;}如果(kbhit()){gotoxy(0,n + 2); ch = getche();}切换(ch){case'w':sn艾克[0] [1] - ;打破;案例's':蛇[0] [1] ++;休息案例'a':蛇[0] [0] - ;打破;案例'd':蛇[0] [0] ++;打破;默认值:break; gotoxy(蛇[0] [0],snake [0] [1]);颜色(14); cout <<“★”<< endl;睡眠(ABS(200-0。*得分)); if(蛇[0] [0] == Apple [0] && Snake [0] [1] == Apple [1])//在蛇分数加1后吃苹果,蛇长度加1 {得分+ + Len ++; Snake =(int **)Realloc(Snake,Sizeof(int *))* len); Snake [Len-1] =(int *)malloc(sizeof(int)* 2); Apple [0] = rand()%n + 1; Apple [1] = rand()%n + 1; gotoxy(Apple [0],Apple [1]);颜色(12); cout <<“●<< endl; gotoxy(n + 5,3);颜色(20); cout << score << endl;}}(蛇[0] [1] == 0 ||蛇[0] [1] == n ||蛇[0] [0] == 0 ||蛇[0] [0] == n)//在墙后击中墙壁失败{gotoxy(n / 2,n / 2);颜色(30); cout <<“失败!!! <<端点; for(i = 0; i 能制作游戏的软件,这取决于你制作的什么样的游戏,平均小游戏,使用Flash平台,甚至一些软件设计平台,但要做好,你应该使用专用的生产平台和编程语言,例如Java语言和Android平台可用于制作移动游戏,而一些计算机如C ++语言使用编程语言通过不同的软件,可以编写不同的游戏类型,当然,如果你有一个非常适合的地方,你可以尝试你自己的平台写游戏环境。详细的建议,你去百度邮政酒吧找到它,有很多大神在这方面,有很多方法可以写游戏。
责任编辑(金门王)
以上就是关于**游戏 源码,传奇手游源码论坛社区**的全部内容,了解更多请关注蚂蚁资源网。

- 免注册用户
- 谁可以给C++或TC编的简单游戏的程序代码。。,#include<iostream.h>#include<time.h>#include<stdlib.h>int cs(int b);void main(){ cout<<"剪刀、石头、布的游戏开始"<<endl; cout<<"请输入剪刀(1)、石头(2)、布(3)输入后面的数"<<endl; int b,c,d,e=1; for(;e=1;e++) { cin>>b;srand(time(0));c=1+rand()%3;d=cs(b);if(d==3 && c==1){cout<<"你出的是布"<<endl;cout<<"电脑出的是剪刀,你输了"<<endl;} if(d==3 && c==2) { cout<<"你出的是布"<<endl; cout<<"电脑出的是石头,你赢了"<<endl; } if (d==3 && c==3) { cout<<"你出的是布"<<endl;cout<<"电脑出的是布,打和了"<<endl;}if(d==2 && c==1){cout<<"你出的是石头"<<endl;cout<<"电脑出的是剪刀,你赢了"<<endl;} if(d==2 && c==2) { cout<<"你出的是石头"<<endl; cout<<"电脑出的是石头,打和了"<<endl; } if (d==2 && c==3) { cout<<"你出的是石头"<<endl;cout<<"电脑出的是布,你输了"<<endl;}if(d==1 && c==1){cout<<"你出的是剪刀"<<endl;cout<<"电脑出的是剪刀,打和了"<<endl;} if(d==1 && c==2) { cout<<"你出的是剪刀"<<endl; cout<<"电脑出的是石头,你输了"<<endl; } if (d==1 && c==3) { cout<<"你出的是剪刀"<<endl;cout<<"电脑出的是布,你赢了"<<endl;} }}int cs(int b){switch (b){ case 1: return 1; break ; case 2: return 2; break ; case 3: return 3; break ; default: cout<<"你输入错误,请重新输入"<<endl;}}
- 2021-02-11 14:12:04

- 515680997
- 我的楼主可以自己玩一下 试试吧 #define N 200 #include <graphics.h> #include <stdlib.h> #include <dos.h> #define LEFT 0x4b00 #define RIGHT 0x4d00 #define DOWN 0x5000 #define UP 0x4800 #define ESC 0x011b int i,key; int score=0;/*得分*/ int gamespeed=50000;/*游戏速度自己调整*/ struct Food { int x;/*食物的横坐标*/ int y;/*食物的纵坐标*/ int yes;/*判断是否要出现食物的变量*/ }food;/*食物的结构体*/ struct Snake { int x[N]; int y[N]; int node;/*蛇的节数*/ int direction;/*蛇移动方向*/ int life;/* 蛇的生命,0活着,1死亡*/ }snake; void Init(void);/*图形驱动*/ void Close(void);/*图形结束*/ void DrawK(void);/*开始画面*/ void GameOver(void);/*结束游戏*/ void GamePlay(void);/*玩游戏具体过程*/ void PrScore(void);/*输出成绩*/ /*主函数*/ void main(void) { Init();/*图形驱动*/ DrawK();/*开始画面*/ GamePlay();/*玩游戏具体过程*/ Close();/*图形结束*/ } /*图形驱动*/ void Init(void) { int gd=DETECT,gm; initgraph(&gd,&gm,"c:\\tc"); cleardevice(); } /*开始画面,左上角坐标为(50,40),右下角坐标为(610,460)的围墙*/ void DrawK(void) { /*setbkcolor(LIGHTGREEN);*/ setcolor(11); setlinestyle(SOLID_LINE,0,THICK_WIDTH);/*设置线型*/ for(i=50;i<=600;i+=10)/*画围墙*/ { rectangle(i,40,i+10,49); /*上边*/ rectangle(i,451,i+10,460);/*下边*/ } for(i=40;i<=450;i+=10) { rectangle(50,i,59,i+10); /*左边*/ rectangle(601,i,610,i+10);/*右边*/ } } /*玩游戏具体过程*/ void GamePlay(void) { randomize();/*随机数发生器*/ food.yes=1;/*1表示需要出现新食物,0表示已经存在食物*/ snake.life=0;/*活着*/ snake.direction=1;/*方向往右*/ snake.x[0]=100;snake.y[0]=100;/*蛇头*/ snake.x[1]=110;snake.y[1]=100; snake.node=2;/*节数*/ PrScore();/*输出得分*/ while(1)/*可以重复玩游戏,压ESC键结束*/ { while(!kbhit())/*在没有按键的情况下,蛇自己移动身体*/ { if(food.yes==1)/*需要出现新食物*/ { food.x=rand()%400+60; food.y=rand()%350+60; while(food.x%10!=0)/*食物随机出现后必须让食物能够在整格内,这样才可以让蛇吃到*/ food.x++; while(food.y%10!=0) food.y++; food.yes=0;/*画面上有食物了*/ } if(food.yes==0)/*画面上有食物了就要显示*/ { setcolor(GREEN); rectangle(food.x,food.y,food.x+10,food.y-10); } for(i=snake.node-1;i>0;i--)/*蛇的每个环节往前移动,也就是贪吃蛇的关键算法*/ { snake.x[i]=snake.x[i-1]; snake.y[i]=snake.y[i-1]; } /*1,2,3,4表示右,左,上,下四个方向,通过这个判断来移动蛇头*/ switch(snake.direction) { case 1:snake.x[0]+=10;break; case 2: snake.x[0]-=10;break; case 3: snake.y[0]-=10;break; case 4: snake.y[0]+=10;break; } for(i=3;i<snake.node;i++)/*从蛇的第四节开始判断是否撞到自己了,因为蛇头为两节,第三节不可能拐过来*/ { if(snake.x[i]==snake.x[0]&&snake.y[i]==snake.y[0]) { GameOver();/*显示失败*/ snake.life=1; break; } } if(snake.x[0]<55||snake.x[0]>595||snake.y[0]<55|| snake.y[0]>455)/*蛇是否撞到墙壁*/ { GameOver();/*本次游戏结束*/ snake.life=1; /*蛇死*/ } if(snake.life==1)/*以上两种判断以后,如果蛇死就跳出内循环,重新开始*/ break; if(snake.x[0]==food.x&&snake.y[0]==food.y)/*吃到食物以后*/ { setcolor(0);/*把画面上的食物东西去掉*/ rectangle(food.x,food.y,food.x+10,food.y-10); snake.x[snake.node]=-20;snake.y[snake.node]=-20; /*新的一节先放在看不见的位置,下次循环就取前一节的位置*/ snake.node++;/*蛇的身体长一节*/ food.yes=1;/*画面上需要出现新的食物*/ score+=10; PrScore();/*输出新得分*/ } setcolor(4);/*画出蛇*/ for(i=0;i<snake.node;i++) rectangle(snake.x[i],snake.y[i],snake.x[i]+10, snake.y[i]-10); delay(gamespeed); setcolor(0);/*用黑色去除蛇的的最后一节*/ rectangle(snake.x[snake.node-1],snake.y[snake.node-1], snake.x[snake.node-1]+10,snake.y[snake.node-1]-10); } /*endwhile(!kbhit)*/ if(snake.life==1)/*如果蛇死就跳出循环*/ break; key=bioskey(0);/*接收按键*/ if(key==ESC)/*按ESC键退出*/ break; else if(key==UP&&snake.direction!=4) /*判断是否往相反的方向移动*/ snake.direction=3; else if(key==RIGHT&&snake.direction!=2) snake.direction=1; else if(key==LEFT&&snake.direction!=1) snake.direction=2; else if(key==DOWN&&snake.direction!=3) snake.direction=4; }/*endwhile(1)*/ } /*游戏结束*/ void GameOver(void) { cleardevice(); PrScore(); setcolor(RED); settextstyle(0,0,4); outtextxy(200,200,"GAME OVER"); getch(); } /*输出成绩*/ void PrScore(void) { char str[10]; setfillstyle(SOLID_FILL,YELLOW); bar(50,15,220,35); setcolor(6); settextstyle(0,0,2); sprintf(str,"score:%d",score); outtextxy(55,20,str); } /*图形结束*/ void Close(void) { getch(); closegraph(); }
- 2021-02-11 14:12:04

- 网站快速搭建
- #include<graphics.h>#include<stdlib.h>#include<dos.h>#define LEFT 0x4b00#define RIGHT 0x4d00#define DOWN 0x5000#define UP 0x4800#define ESC 0x011bint i,key;int score=0;int gamespeed=32000;struct Food /*食物的结构体*/{int x; /*食物的横坐标*/int y; /*食物的纵坐标*/int yes; /*食物是否出现的变量*/}food;struct Snack /*蛇的结构体*/{int x[N];int y[N];int node; /*蛇的节数*/int direction; /*蛇的方向*/int life; /*蛇的生命,0活着,1死亡*/}snake;void Init(void); /*图形驱动*/void Close(void); /*关闭游戏函数*/void DrawK(void); /*画图函数*/void GameOver(void);/*输出失败函数*/void GamePlay(); /*游戏控制函数 主要程序*/void PrScore(void); /*分数输出函数*/DELAY(char ch)/*调节游戏速度*/{if(ch=='3'){delay(gamespeed); /*delay是延迟函数*/delay(gamespeed);}else if(ch=='2'){delay(gamespeed);}}Menu()/*游戏开始菜单*/{char ch;printf("Please choose the gamespeed:\n");printf("1-Fast 2-Normal 3-Slow\n");printf("\nPlease Press The numbers..\n");do{ch=getch();}while(ch!='1'&&ch!='2'&&ch!='3');clrscr();return(ch);}/*主函数*/void main(void){int ch;ch=Menu();Init();DrawK();GamePlay(ch);Close();}void Init(void){int gd=DETECT,gm;initgraph(&gd,&gm,"c:\\tc");cleardevice();}void DrawK(void){setcolor(11);setlinestyle(SOLID_LINE,0,THICK_WIDTH);for(i=50;i<=600;i+=10){rectangle(i,40,i+10,49); /*画出上边框*/rectangle(i,451,i+10,460); /*画出下边框*/}for(i=40;i<=450;i+=10){rectangle(50,i,59,i+10); /*画出左边框*/rectangle(601,i,610,i+10); /*画出右边框*/}}void GamePlay(char ch){randomize(); /*随机数发生器*/food.yes=1; /*1代表要出现食物,0表示以存在食物*/snake.life=0;snake.direction=1;snake.x[0]=100;snake.y[0]=100;snake.x[1]=110;snake.y[1]=100;snake.node=2;PrScore();while(1) /*可以重复游戏*/{while(!kbhit()) /*在没有按键的情况下蛇自己移动*/{if(food.yes==1) /*需要食物*/{food.x=rand()%400+60;food.y=rand()%350+60; /*使用rand函数随机产生食物坐标*/while(food.x%10!=0)food.x++;while(food.y%10!=0)food.y++; /*判断食物是否出现在整格里*/food.yes=0; /*现在有食物了*/}if(food.yes==0) /*有食物了就要显示出来*/{setcolor(GREEN);rectangle(food.x,food.y,food.x+10,food.y-10);}for(i=snake.node-1;i>0;i--) /*贪吃蛇的移动算法*/{snake.x[i]=snake.x[i-1];snake.y[i]=snake.y[i-1]; /*贪吃蛇的身体移动算法*/}switch(snake.direction) /*贪吃蛇的头部移动算法,以此来控制移动*/{case 1:snake.x[0]+=10;break;case 2:snake.x[0]-=10;break;case 3:snake.y[0]-=10;break;case 4:snake.y[0]+=10;break;}for(i=3;i<snake.node;i++) /*判断是否头部与身体相撞*/{if(snake.x[i]==snake.x[0]&&snake.y[i]==snake.y[0]){GameOver();snake.life=1;break;}}/*下面是判断是否撞到墙壁*/if(snake.x[0]<55||snake.x[0]>595||snake.y[0]<55||snake.y[0]>455){GameOver();snake.life=1;}if(snake.life==1) /*如果死亡就退出循环*/break;if(snake.x[0]==food.x&&snake.y[0]==food.y) /*判断蛇是否吃到食物*/{setcolor(0);rectangle(food.x,food.y,food.x+10,food.y-10); /*吃的食物后用黑色将食物擦去*/snake.x[snake.node]=-20;snake.y[snake.node]=-20; /*现把增加的一节放到看不到的地方去*/snake.node++;food.yes=1;score+=10;PrScore();}setcolor(4); /*每次移动后将后面的身体擦去*/for(i=0;i<snake.node;i++)rectangle(snake.x[i],snake.y[i],snake.x[i]+10,snake.y[i]-10);delay(gamespeed);DELAY(ch);setcolor(0);rectangle(snake.x[snake.node-1],snake.y[snake.node-1],snake.x[snake.node-1]+10,snake.y[snake.node-1]-10);}if(snake.life==1)break;key=bioskey(0); /*接受按键*/if(key==ESC)break;elseif(key==UP&&snake.direction!=4)/*判断是否改变方向*/snake.direction=3;elseif(key==RIGHT&&snake.direction!=2)snake.direction=1;elseif(key==LEFT&&snake.direction!=1)snake.direction=2;elseif(key==DOWN&&snake.direction!=3)snake.direction=4;}}void GameOver(void){cleardevice();setcolor(RED);settextstyle(0,0,4);outtextxy(200,200,"GAME OVER");getch();}void PrScore(void){char str[10];setfillstyle(SOLID_FILL,YELLOW);bar(50,15,220,35);setcolor(6);settextstyle(0,0,2);sprintf(str,"scord:%d",score);outtextxy(55,20,str);}void Close(void){getch();closegraph();}贪吃蛇
- 2021-02-16 07:30:01