Dev C++游戏大全

1.打怪游戏icon-default.png?t=N7T8https://blog.csdn.net/YoungHacker_dyz/article/details/126374964#1.%E6%89%93%E6%80%AA%E6%B8%B8%E6%88%8F

#include<bits/stdc++.h>
#include<conio.h>
#include<windows.h>
using namespace std;
double shanghai[20]={0.6,1.1,2,3.16,5.5,7,10,20,50,100,146.23,254.13,312,403,601,1023};
double bosshealth[20]={2,3,4,5.9,8,14,19,32,73,157,200,403,801,1200,3630,20123};
double wj_shanghai=1,wj_health=10,wj_max_health=10,boss,wj_money;
void chushihua();
void game();
void gongji();
void goumai();
void shangdian();
void zhujiemian();
void fangyu();
void cend();
void chushou();
void print(char[]);
int bishou=0,caidao=0,jian=0,shenjian=0;
double bishou_1=5,caidao_1=17,jian_1=58,shenjian_1=123.1;
int hat=0,douhui=0,hudun=0,hunjia=0,shendun=0;
double hat_1=7,douhui_1=21,hudun_1=49,hunjia_1=89,shendun_1=210.4;
void cend()
{
    system("cls");
    print("GAME OVER");
    exit(1);
}
void game()
{
    int k;
    chushihua();
    IO:
    printf("请输入对手等级 (0~15)\n");
    scanf("%d",&k);
    if(k>15||k<0)
    {
        system("cls");
        goto IO;
    }
    boss=bosshealth[k];
    system("cls");
    while(wj_health>=0)
    {
        srand(time(NULL));
        QP:
        printf("1.逃跑        2.进攻\n");
        char s=getch();
        if(s<'1'||s>'2')
        {
            system("cls");
            goto QP;
        }
        if(s=='1')
        {
            system("cls");
            zhujiemian();
        }
        system("cls");
        double l=shanghai[k]*((rand()%2)+1)+fabs(double(rand()%100/100-2));
        printf("对手对你造成了%lf点伤害\n",l);
        wj_health-=l;
        printf("你当前剩余血量:%lf\n",wj_health);
        if(wj_health<=0)
            cend();
        double o=wj_shanghai*((rand()%2)+1)+double(rand()%10/10);
        boss-=o;
        printf("你对对手造成了%lf点伤害\n",o);
        printf("对手当前剩余血量:%lf\n\n",boss);
        if(boss<=0)
        {
            printf("胜利!\n获得%lf金币\n\n当前剩余血量:%lf\n",shanghai[k]+3,wj_health);
            wj_money+=shanghai[k]+3;
            printf("\n余额:%lf\n",wj_money);
            getch();
            if(k==15)
            {
                printf("恭喜玩家!游戏胜利!\n");
                getch();
                exit(1);
            }
            system("cls");
            zhujiemian();
        }
    }
}
void zhujiemian()
{
    PO:
    printf("1.商店 2.战斗 3.回血 4.状态\n");
    char k=getch();
    if(k>'5'||k<'1')
    {
        system("cls");
        goto PO;
    }
    if(k=='1')
    {
        system("cls");
        shangdian();
        return;
    }
    if(k=='2')
    {
        system("cls");
        game();
        return;
    }
    if(k=='3')
    {
        system("cls");
        if(wj_money>0)
        {
            wj_money=wj_money*4/5-1;
            chushihua();
            wj_health=wj_max_health;
            printf("回血成功!\n");
            getch();
            system("cls");
            goto PO;
        }
        else
        {
            printf("余额不足!\n");
            getch();
            system("cls");
            goto PO;
        }
    }
    if(k=='4')
    {
        chushihua(); 
        system("cls");
        printf("生命值:%lf\n",wj_health);
        printf("最大生命值:%lf\n",wj_max_health);
        printf("攻击力:%lf\n",wj_shanghai);
        printf("金币:%lf\n",wj_money); 
        getch();
        system("cls");
        goto PO;
    }
    if(k=='5')
    {
        string a;
        system("cls");
        printf("输入密码!\n");
        cin>>a;
        if(a=="songyudashuaibi"||a=="PI"||a=="14588")
        {
            wj_money+=1000;
            printf("外挂生效\n");
            Sleep(1000);
            system("cls");
            goto PO;
        }
        printf("外挂失败\n");
        Sleep(1000);
        system("cls");
        goto PO;
    }
}
void shangdian()
{
    LK:
    printf("1.购买 2.返回主界面\n");
    char k=getch();
    if(k!='1'&&k!='2')
    {
        system("cls");
        goto LK;
    }
    if(k=='1')
    {
        system("cls");
        goumai();
        goto LK;
    }
    if(k=='2')
    {
        system("cls");
        zhujiemian();
        return;
    }
}
void goumai()
{
    ML:
    printf("1.攻击 2.防御 3.返回主界面\n");
    char k=getch();
    if(k!='1'&&k!='2'&&k!='3')
    {
        system("cls");
        goto ML;
    }
    if(k=='1')
    {
        system("cls");
        gongji();
        goto ML;
    }
    if(k=='3')
    {
        system("cls");
        zhujiemian();
        return;
    }
    if(k=='2')
    {
        fangyu();
    }

void gongji()
{
    OP:
    system("cls");
    printf("0.返回上界面\n");
    printf("1.返回主界面\n");
    printf("2.匕首 5金币\n");
    printf("3.菜刀 17金币\n");
    printf("4.剑 68金币\n");
    printf("5.圣剑 210金币\n");
    printf("提醒:金币价格与伤害成正比\n");
    char k=getch();
    if(k<'0'||k>'5')
    {
        system("cls");
        goto OP;
    }
    if(k=='0')
    {
        system("cls");
        goumai();
        return;
    }
    if(k=='1')
    {
        system("cls");
        zhujiemian();
        return;
    }
    if(k=='2')
    {
        if(wj_money>=bishou_1)
        {
            chushihua();
            system("cls");
            wj_money-=bishou_1;
            bishou++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        system("cls");
        goto OP;
    }
    if(k=='3')
    {
        if(wj_money>=caidao_1)
        {
            chushihua();
            system("cls");
            wj_money-=caidao_1;
            caidao++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        goto OP;
    }
    if(k=='4')
    {
        if(wj_money>=jian_1)
        {
            chushihua();
            system("cls");
            wj_money-=jian_1;
            jian++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        goto OP;
    }
    if(k=='5')
    {
        if(wj_money>=shenjian_1)
        {
            chushihua();
            system("cls");
            wj_money-=shenjian_1;
            shenjian++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        goto OP;
    }
}
void fangyu()
{
    OP:
    system("cls");
    printf("0.返回上界面\n");
    printf("1.返回主界面\n");
    printf("2.绿帽子 7金币\n");
    printf("3.头盔 21金币\n");
    printf("4.护盾 49金币\n");
    printf("5.盔甲 89金币\n");
    printf("6.圣盾 210金币\n");
    printf("提醒:金币价格与伤害成正比\n");
    char k=getch();
    if(k<'0'||k>'6')
    {
        system("cls");
        goto OP;
    }
    if(k=='0')
    {
        system("cls");
        goumai();
        return;
    }
    if(k=='1')
    {
        system("cls");
        zhujiemian();
        return;
    }
    if(k=='2')
    {
        if(wj_money>=hat_1)
        {
            chushihua();
            system("cls");
            wj_money-=hat_1;
            hat++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        system("cls");
        goto OP;
    }
    if(k=='3')
    {
        if(wj_money>=douhui_1)
        {
            chushihua();
            system("cls");
            wj_money-=douhui_1;
            douhui++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        goto OP;
    }
    if(k=='4')
    {
        if(wj_money>=hudun_1)
        {
            chushihua();
            system("cls");
            wj_money-=hudun_1;
            hudun++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        goto OP;
    }
    if(k=='5')
    {
            chushihua();
        if(wj_money>=hunjia_1)
        {
            system("cls");
            wj_money-=hunjia_1;
            hunjia++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        goto OP;
    }
    if(k=='6')
    {
        if(wj_money>=shendun_1)
        {
            chushihua();
            system("cls");
            wj_money-=shendun_1;
            shendun++;
            goto OP;
        }
        system("cls");
        printf("余额不足!\n");
        getch();
        goto OP;
    }
}
void chushihua()
{
    wj_max_health=hat*hat_1+douhui*douhui_1+hudun*hudun_1+hunjia*hunjia_1+shendun*shendun_1+10;
    wj_shanghai=bishou*bishou_1+caidao*caidao_1+jian*jian_1+shenjian*shenjian_1+1;
}
void print(char a[])
{
    int s=strlen(a);
    for(int i=0;i<s;i++)
    {
        cout<<a[i];
        Sleep(400);
    }
    getch(); 
    system("cls");
}
int main()
{
    system("title game");
    zhujiemian();
    return 0;
}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Dev-C是一款用于编写和开发C语言程序的集成开发环境(IDE)。它提供了一整套工具和资源,方便开发者进行编码、调试、编译和运行程序。 Dev-C的游戏代码大全是指其中收录了许多关于游戏开发的代码示例和模板。这些代码可以帮助开发者快速上手游戏开发,提供了各种功能和特性的实现方法。 游戏代码大全一般包括以下几个方面的内容: 1. 游戏引擎:提供了一个基于C语言的游戏引擎,开发者可以利用该引擎构建自己的游戏世界。例如,提供了图形渲染、碰撞检测、场景管理等功能的实现方法。 2. 游戏物体和角色:提供了创建和管理游戏物体和角色的代码示例。例如,实现了游戏人物的移动、跳跃、攻击等基本行为。 3. 游戏功能和特性:提供了一些游戏开发中常见的功能和特性的实现方法。例如,实现了计分系统、关卡系统、游戏存档等功能。 4. 游戏界面和交互:提供了一些关于游戏界面和交互的代码示例。例如,实现了游戏菜单、游戏设置、用户输入等功能。 总而言之,Dev-C的游戏代码大全为开发者提供了丰富的代码资源,帮助他们更快地开发出自己的游戏。开发者可以根据自己的需求,参考这些代码,并根据实际情况进行修改和优化,以满足自己的游戏开发目标。 ### 回答2: Dev-C是一个集成开发环境(IDE),用于开发C和C++程序。它包含了一个代码编辑器、编译器和调试器,可以帮助开发人员更轻松地编写、调试和测试游戏代码。 Dev-C的用户界面简洁易用,适合初学者使用。它提供了丰富的功能,如代码自动完成、语法高亮和错误检查等,有助于提高代码的编写效率。此外,Dev-C还支持多个文件的管理和项目组织,使得大型游戏项目的开发更加便捷。 Dev-C内置了GCC编译器,可以将C和C++代码编译为可执行文件。编译器具有优化选项,可以提高游戏的性能和效率。同时,Dev-C还提供了强大的调试功能,可以帮助开发人员找出代码中的错误和问题,并进行修复。 对于游戏开发者而言,Dev-C提供了游戏开发相关的代码模板和函数库,方便开发人员快速构建游戏。例如,Dev-C中提供了大量的图形和输入输出函数,方便实现游戏画面和玩家交互的功能。此外,Dev-C还支持游戏音效和网络编程等扩展功能。 总结来说,Dev-C是一个功能强大且易于使用的IDE,适用于C和C++游戏代码的开发。它提供了丰富的功能和工具,可以帮助开发人员快速、高效地编写、调试和测试游戏代码。无论是初学者还是有经验的开发者,Dev-C都是一个优秀的选择。 ### 回答3: Dev-C++是一款开放源代码的集成开发环境,主要用于编写和调试C和C++程序。它是一个功能强大且易于使用的工具,被广泛应用于游戏开发中。 Dev-C++的游戏代码大全是一个包含各种游戏开发示例代码的资源库。这些示例代码覆盖了游戏开发中常见的各个方面,如图形绘制、动画效果、音频处理、用户界面、游戏逻辑等。 对于想要学习游戏开发的人来说,这个代码库是一个非常有价值的资源。 在Dev-C++的游戏代码大全中,你可以找到许多经典的游戏示例,包括贪吃蛇、弹球、飞机大战等。这些示例代码以简洁的方式展示了如何使用C++语言实现基本的游戏功能,例如游戏逻辑的实现、用户输入的处理以及图像的渲染等。 此外,Dev-C++还提供了一些常用的游戏开发库,如SDL(Simple DirectMedia Layer)和OpenGL。这些库可以帮助开发者快速搭建游戏框架,并提供了丰富的函数和接口,使得游戏开发更加便捷。 总之,Dev-C++的游戏代码大全是一个帮助初学者入门游戏开发的宝贵资源。通过学习和参考这些示例代码,可以帮助开发者理解游戏开发的基本原理和常用技术,从而提升自己的编程水平,并创建出自己的独特游戏作品。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值