精华内容
下载资源
问答
  • 基于控制台的C++ 赛车游戏代码

    千次阅读 2019-06-10 16:48:15
    一套基于控制台窗口的C++ 赛车游戏代码,有点掌上游戏机的味道,程序运行后,是以命令提示符的形式存在,按窗口上的提示输入命令,游戏即将开始。道路慢慢弯曲,你要做的就是控制赛车不偏离跑道,右侧适时显示速度国...

    一套基于控制台窗口的C++ 赛车游戏代码,有点掌上游戏机的味道,程序运行后,是以命令提示符的形式存在,按窗口上的提示输入命令,游戏即将开始。道路慢慢弯曲,你要做的就是控制赛车不偏离跑道,右侧适时显示速度国,虽然界面比较简,但能写出这么好玩的C++游戏,还是值得参考的。

    项目展示:

     

     

    代码展示:

     

    比较初级的基础教程,比较笼统,意在能够带领初学者迅速的入门。如果你的需求是进阶提高,那么这些教程并不适合你。事实上对于初学者来说,这几篇教程会让你理解到一个大致的物理原理和实现流程,这对于你日后去研究那些更成熟的赛车引擎来说,会有一些帮助。而且,如果你玩过我的游戏,你也会发现这些基础的知识在我的游戏里是完全够用的。

     

     

     

    展开全文
  • c++游戏代码

    万次阅读 2015-07-09 13:50:35
    /*===========================Program Description==========================*/ .../*程序目的:打砖块游戏演示 */ /*written by :董大钿 */ /*=========================================================
    /*===========================Program Description==========================*/ 
    /*程序名称:game.c */
    /*程序目的:打砖块游戏演示 */
    /*written by :董大钿 */
    /*========================================================================*/

    #include "graphics.h"
    #include "stdio.h"
    #include "conio.h" /*所需的头文件*/

    int on; /*声明具有开关作用的全局变量*/
    static int score; /*声明静态的记分器变量*/

    /* 定义开始界面函数*/

    int open()
    {
    setviewport(100,100,500,380,1); /*设置图形窗口区域*/
    setcolor(4); /*设置作图色*/
    rectangle(0,0,399,279); /*以矩形填充所设的图形窗口区域*/
    setfillstyle(SOLID_FILL,7); /*设置填充方式*/
    floodfill(50,50,4); /*设置填充范围*/
    setcolor(8);
    settextstyle(0,0,9); /*文本字体设置*/
    outtextxy(90,80,"BALL"); /*输出文本内容*/
    settextstyle(0,0,1);
    outtextxy(110,180,"version 1.0");
    outtextxy(110,190,"made by ddt");
    setcolor(128);
    settextstyle(0,0,1);
    outtextxy(120,240,"Press any key to continue......");
    }

    /*定义退出界面函数*/
    int quitwindow()
    {
    char s[100]; /*声明用于存放字符串的数组*/
    setviewport(100,150,540,420,1);
    setcolor(YELLOW);
    rectangle(0,0,439,279);
    setfillstyle(SOLID_FILL,7);
    floodfill(50,50,14);
    setcolor(12);
    settextstyle(0,0,8);
    outtextxy(120,80,"End");
    settextstyle(0,0,2);
    outtextxy(120,200,"quit? Y/N");
    sprintf(s,"Your score is:%d",score);/*格式化输出记分器的值*/
    outtextxy(120,180,s);
    on=1; /*初始化开关变量*/
    }

    /*主函数*/
    main()
    {
    int gdriver,gmode;
    gdriver=DETECT; /*设置图形适配器*/
    gmode=VGA; /*设置图形模式*/
    registerbgidriver(EGAVGA_driver); /*建立独立图形运行程序*/
    initgraph(&gdriver,&gmode,""); /*图形系统初试化*/
    setbkcolor(14);
    open(); /*调用开始界面函数*/
    getch(); /*暂停*/

    while(1) /*此大循环体控制游戏的反复重新进行*/
    {
    int driver,mode,l=320,t=400,r,a,b,dl=5,n,x=200,y=400,r1=10,dx=-2,dy=-2;/*初始化小球相关参数*/
    int left[100],top[100],right[100],bottom[100],i,j,k,off=1,m,num[100][100];/*方砖阵列相关参数*/
    static int pp;
    static int phrase; /*一系列起开关作用的变量*/
    int oop=15;
    pp=1;
    score=0;
    driver=DETECT;
    mode=VGA;
    registerbgidriver(EGAVGA_driver);
    initgraph(&driver,&mode,"");
    setbkcolor(10);
    cleardevice(); /*图形状态下清屏*/
    clearviewport(); /*清除现行图形窗口内容*/
    b=t+6;
    r=l+60;
    setcolor(1);
    rectangle(0,0,639,479);
    setcolor(4);
    rectangle(l,t,r,b);
    setfillstyle(SOLID_FILL,1);
    floodfill(l+2,t+2,4);

    for(i=0,k=0;i<=6;i++) /*此循环绘制方砖阵列*/
    {
    top[i]=k;
    bottom[i]=top[i]+20;
    k=k+21;
    oop--;
    for(j=0,m=0;j<=7;j++)
    {
    left[j]=m;
    right[j]=left[j]+80;
    m=m+81;
    setcolor(4);
    rectangle(left[j],top[i],right[j],bottom[i]);
    setfillstyle(SOLID_FILL,j+oop);
    floodfill(left[j]+1,top[i]+1,4);
    num[i][j]=pp++;
    }
    }

    while(1) /*此循环控制整个动画*/
    {
    while(!kbhit())
    {
    x=x+dx; /*小球运动的圆心变量控制*/
    y=y+dy;
    if(x+r1>r||x+r1<r)
    { phrase=0;}
    if((x-r1<=r||x+r1<=r)&&x+r1>=l)
    {
    if(y<t)
    phrase=1;
    if(y+r1>=t&&phrase==1)
    {dy=-dy;y=t-1-r1;}
    }

    if(off==0)
    continue;

    for(i=0;i<=6;i++) /*此循环用于判断、控制方砖阵列的撞击、擦除*/

    for(j=0;j<=7;j++)
    {
    if((x+r1<=right[j]&&x+r1>=left[j])||(x-r1<=right[j]&&x-r1>=left[j]))
    {
    if(( y-r1>top[i]&&y-r1<=bottom[i])||(y+r1>=top[i]&&y+r1<=bottom[i] ))
    {
    if(num[i][j]==0)
    {continue; }
    setcolor(10);
    rectangle(left[j],top[i],right[j],bottom[i]);
    setfillstyle(SOLID_FILL,10);
    floodfill(left[j]+1,top[i]+1,10);
    dy=-dy;
    num[i][j]=0;
    score=score+10;
    printf("%d\b\b\b",score);
    }
    }
    if((y+r1>=top[i]&&y+r1<=bottom[i])||(y-r1>=top[i]&&y-r1<=bottom[i]))
    {
    if((x+r1>=left[j]&&x+r1<right[j])||(x-r1<=right[j]&&x-r1>left[j]))
    {
    if(num[i][j]==0)
    { continue;}
    setcolor(10);
    rectangle(left[j],top[i],right[j],bottom[i]);
    setfillstyle(SOLID_FILL,10);
    floodfill(left[j]+1,top[i]+1,10);
    dx=-dx;
    num[i][j]=0;
    score=score+10;
    printf("%d\b\b\b",score);
    }
    }
    }

    if(x+r1>639) /*控制小球的弹射范围*/
    {dx=-dx;x=638-r1;}
    if(x<=r1)
    {dx=-dx;x=r1+1;}
    if(y+r1>=479)
    {off=0;quitwindow();break;}
    if(y<=r1)
    {dy=-dy;y=r1+1;}
    if(score==560)
    {off=0;quitwindow();break;}
    setcolor(6);
    circle(x,y,r1);
    setfillstyle(SOLID_FILL,14);
    floodfill(x,y,6);
    delay(1000);
    setcolor(10);
    circle(x,y,r1);
    setfillstyle(SOLID_FILL,10);
    floodfill(x,y,10);
    }

    a=getch();
    setcolor(10);
    rectangle(l,t,r,b);
    setfillstyle(SOLID_FILL,10);
    floodfill(l+2,t+2,10);
    if(a==77&&l<=565) /*键盘控制设定*/
    {dl=20;l=l+dl;}
    if(a==75&&l>=15)
    {dl=-20;l=l+dl;}
    if(a=='y'&&on==1)
    break;
    if(a=='n'&&on==1)
    break;
    if(a==27)
    {quitwindow();off=0;}
    r=l+60;
    setcolor(4);
    rectangle(l,t,r,b);
    setfillstyle(SOLID_FILL,1);
    floodfill(l+5,t+5,4);
    delay(100);
    }
    if(a=='y'&&on==1) /*是否退出游戏*/
    {break;}
    if(a=='n'&&on==1)
    { continue;}
    }
    closegraph();

    }
    展开全文
  • c++经典代码大全 清晰版

    千次下载 热门讨论 2011-12-06 13:28:30
    c++经典代码大全 适合C++新手看的经典代码!!!
  • 游戏贪吃蛇的c++代码

    万次阅读 2019-03-03 10:07:47
    游戏贪吃蛇的c++代码,快来看看,还带解释 #include #include #include #include #include &lt;conio.h&gt; #include #include &lt;windows.h&gt; using namespace std; /*** 光标定位 ***...

    小游戏贪吃蛇的c++源代码,快来看看,还带解释
    #include
    #include
    #include
    #include
    #include <conio.h>
    #include
    #include <windows.h>
    using namespace std;

    /*** 光标定位 ***/
    HANDLE hout=GetStdHandle(STD_OUTPUT_HANDLE);
    COORD coord;

    void locate(int x,int y)
    {
    coord.X=y;
    coord.Y=x;
    SetConsoleCursorPosition(hout,coord);
    };

    /*** 隐藏光标 ***/
    void hide()
    {
    CONSOLE_CURSOR_INFO cursor_info={1,0};
    SetConsoleCursorInfo(hout, &cursor_info);
    }

    /*** 生成随机数 ***/
    double random(double start, double end)
    {
    return start+(end-start)*rand()/(RAND_MAX + 1.0);
    }

    /*** 定义地图的长宽,蛇的坐标,长度,方向,食物的位置 ***/
    int m,n;

    struct node
    {
    int x,y;
    }snake[1000];

    int snake_length,dir;
    node food;
    int direct[4][2]={{-1,0},{1,0},{0,-1},{0,1}};

    /*** 输出墙 ***/
    void print_wall()
    {
    cout << " ";
    for (int i=1;i<=n;i++)
    cout << “-”;
    cout << endl;
    for (int j=0;j<=m-1;j++)
    {
    cout << “|”;
    for (int i=1;i<=n;i++) cout << " ";
    cout << “|” << endl;
    }
    cout << " ";
    for (int i=1;i<=n;i++)
    cout << “-”;
    }

    /*** 首次输出蛇,其中snake[0]代表头 **/
    void print_snake()
    {
    locate(snake[0].x,snake[0].y);
    cout << “@”;
    for (int i=1;i<=snake_length-1;i++)
    {
    locate(snake[i].x,snake[i].y);
    cout << "
    ";
    }
    }

    /*** 判断是否撞墙或者自撞 ***/
    bool is_correct()
    {
    if (snake[0].x0 || snake[0].y0 || snake[0].xm+1 || snake[0].yn+1) return false;
    for (int i=1;i<=snake_length-1;i++)
    {
    if (snake[0].xsnake[i].x && snake[0].ysnake[i].y) return false;
    }
    return true;
    }

    /*** 随机生成并输出食物位置 ***/
    bool print_food()
    {
    srand((unsigned)time(0));
    bool e;
    while (1)
    {
    e=true;
    int i=(int) random(0,m)+1,j=(int) random(0,n)+1;
    food.x=i;food.y=j;
    for (int k=0;k<=snake_length-1;k++)
    {
    if (snake[k].xfood.x && snake[k].yfood.y)
    {
    e=false;break;
    }
    }
    if (e) break;
    }
    locate(food.x,food.y);
    cout << “$”;
    return true;
    }

    /*** 蛇的前进 /
    bool go_ahead()
    {
    node temp;
    bool e=false;
    temp=snake[snake_length-1];
    for (int i=snake_length-1;i>=1;i–)
    snake[i]=snake[i-1];
    snake[0].x+=direct[dir][0];
    snake[0].y+=direct[dir][1];
    locate(snake[1].x,snake[1].y);
    cout << "
    ";
    /
    * 吃到了食物 /
    if (snake[0].xfood.x && snake[0].yfood.y)
    {
    snake_length++;
    e=true;
    snake[snake_length-1]=temp;
    }
    /
    输出此时蛇状态 /
    if (!e)
    {
    locate(temp.x,temp.y);
    cout << " ";
    }
    else
    print_food();
    locate(snake[0].x,snake[0].y);
    cout << “@”;
    /
    如果自撞 ***/
    if (!is_correct())
    {
    system(“cls”);
    cout << “You lose!” << endl << "Length: " << snake_length << endl;
    return false;
    }
    return true;
    }

    /*** 主函数 /
    int main()
    {
    cout << “--------------------贪吃蛇---------------------” << endl;
    cout << “请先输入两个数,表示地图大小.要求长宽均不小于10.” << endl;
    cout << “请注意窗口大小,以免发生错位.建议将窗口调为最大.” << endl;
    cout << “再选择难度.请在1-10中输入1个数,1最简单,10则最难” << endl;
    cout << “然后进入游戏画面,以方向键控制方向.祝你游戏愉快!” << endl;
    cout << “-----------------------------------------------” << endl;
    cin >> m >> n;
    if (m<10 || n<10 || m>25 || n>40)
    {
    cout << “ERROR” << endl;
    system(“pause”);
    return 0;
    }
    int hard;
    cin >> hard;
    if (hard<=0 || hard>100)
    {
    cout << “ERROR” << endl;
    system(“pause”);
    return 0;
    }
    /
    数据全部初始化,包括蛇长,位置,方向 /
    snake_length=5;
    clock_t a,b;
    char ch;
    double hard_len;
    for (int i=0;i<=4;i++)
    {
    snake[i].x=1;
    snake[i].y=5-i;
    }
    dir=3;
    /
    输出初始地图,蛇与食物 /
    system(“cls”);
    hide();
    print_wall();
    print_food();
    print_snake();
    locate(m+2,0);
    cout << "Now length: ";
    /
    开始游戏 /
    while (1)
    {
    /
    难度随长度增加而提高 /
    hard_len=(double)snake_length/(double) (m
    n);
    /
    * 调节时间,单位是ms /
    a=clock();
    while (1)
    {
    b=clock();
    if (b-a>=(int)(400-30
    hard)
    (1-sqrt(hard_len))) break;
    }
    /
    ** 接受键盘输入的上下左右,并以此改变方向 /
    if (kbhit())
    {
    ch=getch();
    if (ch==-32)
    {
    ch=getch();
    switch(ch)
    {
    case 72:
    if (dir2 || dir3)
    dir=0;
    break;
    case 80:
    if (dir2 || dir3)
    dir=1;
    break;
    case 75:
    if (dir0 || dir1)
    dir=2;
    break;
    case 77:
    if (dir0 || dir1)
    dir=3;
    break;
    }
    }
    }
    /
    前进 /
    if (!go_ahead()) break;
    /
    在最后输出此时长度 ***/
    locate(m+2,12);
    cout << snake_length;
    }
    system(“pause”);
    return 0;
    }

    展开全文
  • 网上下载的tuxracer这个开源游戏代码,要对其做适当修改。 问题是现在怎么把源代码生成游戏? ![图片说明](https://img-ask.csdn.net/upload/201603/06/1457257883_925673.png) ![图片说明]...
  • 怎样把一段C++代码(小游戏代码)跟Xtinon pro 联系起来,想弄一个小游戏,也是一份暑假作业来的。。。大神们,求救,谢谢!
  • c++代码游戏

    千次阅读 2020-08-30 15:34:05
    这是我的第二个小游戏,很简单,不,应该是特别简单。 猜猜这是什么游戏?对了,就是猜数字。 是不是很简单 #include<iostream> #include<cstdlib> #include<ctime> #include<windows.h>...

    这是我的第二个小游戏,很简单,不,应该是特别简单。
    猜猜这是什么游戏?对了,就是猜数字。
    这是我的第一篇
    在这里插入图片描述

    是不是很简单

    #include<iostream>
    #include<cstdlib>
    #include<ctime>
    #include<windows.h>
    using namespace std;
    int main(){
    	srand(time(0));
    	int n=rand()%1000;
    	int c=-1,ans=0;
    	cout<<"你要猜的数字为:***"<<endl<<endl; 
    	while(c!=n){
    		cout<<"你猜的数是:";
    		cin>>c;
    		ans++;
    		if(c>n){
    			Sleep(500); 
    			cout<<"大了!"<<endl<<endl; 
    		} else if(c<n){
    			Sleep(500);
    			cout<<"小了!"<<endl<<endl;
    		}
    	}
    	cout<<"恭喜猜中!!!"<<endl<<"共用了"<<ans<<"次!!!"<<endl; 
    	system("pause");
    	return 0;
    }
    
    
    

    我的洛谷团队:https://www.luogu.com.cn/team/34776#main

    展开全文
  • 超级玛丽游戏代码解读(VC,c++)

    万次阅读 2017-08-29 15:16:34
    基于vs2008的c++超级玛丽游戏代码解读
  • c++游戏编程 源代码

    万次阅读 2019-09-25 03:24:09
    //贪吃蛇大战HuangZhen #include<iostream> #include<windows.h> #include<conio.h>//kbhit();getch() #include<ctime>//随机种子 #include<cstdlib>//随机种子 #include&l...
  • 俄罗斯方块源代码(C++代码)

    热门讨论 2011-03-03 21:00:57
    俄罗斯方块源代码(C++代码),俄罗斯方块游戏代码,有兴趣的朋友可以看一下。
  • C++游戏项目服务端代码分层架构

    千次阅读 2019-07-29 16:32:39
    实习期间深入参与到某大型pc端枪战游戏的后端开发中,此游戏由著名游戏工作室编写,代码可读性极高,自由时间对游戏后台代码进行了深入研究,在满足自身工作需要的同时对游戏后台的架构也有了理解,记录在此,以便...
  • 求购一个c++编译游戏图像代码

    千次阅读 2009-12-24 16:28:00
    求购一个c++编译游戏图像代码求购一个c++编译游戏图像代码求购一个c++编译游戏图像代码求购一个c++编译游戏图像代码求购一个c++编译游戏图像代码求购一个c++编译游戏图像代码求购一个c++编译游戏图像代码求购一个c++...
  • 猜数字游戏C++代码

    千次阅读 2020-01-22 14:20:08
    一、游戏介绍   猜数字(又称 Bulls and Cows )是一种古老的的密码破译类益智类小游戏,起源于20世纪中期,一般由两个人或多人玩,也可以由一个人和电脑玩。一方出数字,一方猜。出数字的人要想好一个没有重复...
  • C++“超级玛丽”游戏的源代码

    千次下载 热门讨论 2012-02-27 16:51:53
    C++“超级玛丽”游戏的源代码, C++“超级玛丽”游戏的源代码.
  • C++扫雷代码

    万次阅读 2011-09-09 22:56:00
    { // 模拟游戏过程,若点到一个空白,则系统自动向外扩展 for ( int j = 0; j ; j++ ) if ( x+derection[i] [j] [i] >= 1 && y+derection[j] >= 1 && !( derection[i] == 0 && derection[j] == 0 ) &&...
  • 代码: #include #include #include #include #include #include int map[4][3]; int num = 0; IMAGE image1, image2, image3, image4, image5, image6, image7, image8, image9, image10, image11, image12, image13...
  • C++游戏开发》笔记十一 平滑动画 源代码 欢迎大家阅读配套博文 http://blog.csdn.net/u011371356/article/details/9430645
  • 俄罗斯方块c++代码

    万次阅读 多人点赞 2019-08-23 21:17:07
    //游戏结束 void eliminateRow(HANDLE hOut, int map[21][12], int &val, int &fraction, int &checkpoint);//判断是否能消行并更新分值 int main() { int map[21][12]; int blockA[4][4];//候选区的方块 int ...
  • c++贪吃蛇源代码 完整版

    万次阅读 多人点赞 2020-01-10 16:26:26
    c++ 实现贪吃蛇, 完整源码 文章结构: 数据结构分析 程序运行分析 难点分析 一点思考 源代码 总结 数据结构分析: 1.双向队列:这里我才用双向队列的数据结构存储蛇身节点(这里的蛇身节点我才用...
  • C/C++代码的网站

    千次阅读 2018-07-14 21:54:24
    这里列出了50名优秀网站和网页清单,这些网站提供c/c++代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,...
  • 五子棋游戏中判断胜负的C++代码

    千次阅读 2013-12-14 13:54:50
    今天在看《精通Windows Sockets 网络开发——基于Visual C++》(孙海民 编著,人民邮电出版社出版)这本书的时候,有一个网络五子棋游戏的实例,个人觉得除了服务器和客户端通信、管理用户列表之外,在每一步中判断...
  • 21点小游戏C++代码

    千次阅读 2012-12-10 23:03:56
    #include #include #include using namespace std;...//因为rand()函数有一定的缺陷,所以在程序中定义了randNum数组来存放随机数 ... //即使使用了种子函数... cout****************** 欢迎玩二十一点游戏 ********...
  • 本人是刚进入大1新生,读的专业用到MFC,现在想利用MFC做一些简单的游戏,问题是网上找的很多游戏编程都没详细的流程和代码,现想找个简单游戏代码来练练手。小白一个求指导,这是我的邮箱1198903926@qq.com
  • 经典游戏---贪吃蛇从C++代码实现

    万次阅读 多人点赞 2014-05-31 00:09:10
    学习了c++这门编程语言后,我就想着能不能把它做出来,在我查看了相关知识后,明白了其中的道理,就尝试着自己写出这个小游戏来,而且加入了许多可玩性的东西,包括等级选择,暂停/继续和分数制。整个程序采用了类...
  • C++到底是如何从代码游戏的?

    万次阅读 多人点赞 2020-04-29 20:30:40
    你既然问C++了,那我问你,现在,我有一个Student类。C++怎么创建一个学生类的对象? // 嗯我会!有两种方式: Student s; Student *s2 = new Student("张三"); 那好,现在这学生的行为有:吃饭,睡觉,上网课。...
  • 推箱子小游戏C++代码

    千次阅读 2018-03-11 22:30:40
    一个推箱子的小游戏上学期课设作业,交上去后就没用了,分享出来给大家玩玩,完成度一般,只能算是一个demo源代码地址:GitHub
  • C++开源代码项目汇总

    千次阅读 2017-08-28 14:35:31
    Google的C++开源代码项目 v8 - V8 JavaScript Engine V8 是 Google 的开源 JavaScript 引擎。 V8 采用 C++ 编写,可在谷歌浏览器(来自 Google 的开源浏览器)中使用。 V8 根据 ECMA-262 第三版中的说明使用 ...
  • C++代码

    千次阅读 2015-11-22 20:03:37
    这里列出了50名优秀网站和网页清单,这些网站提供c/c++代码。这份清单提供了源代码的链接以及它们的小说明。我已尽力包括最佳的C/C++代码的网站。这不是一个完整的清单,您有建议可以联系我,我将欢迎您的建议,...
  • 这是一款容易上手的游戏,我相信大家都不会...我用C++开发了一个简单的自动寻路贪吃蛇游戏:功能和界面比较的单一 功能: 1.自动寻路:开始游戏后小蛇无需人工操作,小蛇自动寻路,吃掉食物 小蛇起始位置10*10坐标(3...
  • 点击下载 转载于:https://www.cnblogs.com/211xun/p/10422548.html

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 126,585
精华内容 50,634
关键字:

c++游戏代码

c++ 订阅