问题标题: 酷町堂:陈室战争2.4

1
1
已解决
陈喆鹏
陈喆鹏
资深光能
资深光能
#include<iostream>
#include<string>
#include<cstdio>
#include<windows.h>
#include<stdlib.h> 
#include<fstream>
#include<sys/time.h>
#include<cstdlib>
#include<ctime>
#include<string.h>
#include<conio.h>
#include<iomanip>
#include<stdio.h>
#pragma  comment(lib,"WinMM.Lib")
using namespace std;
#define CHUNK_SIZE 1024 * 1024
string n;
char zsm,czp1,czp2;
int ldj=1,ljy=1000,zs=0;
int xl=100,gj=20,nl=100,nlsx=100,jy,dj=1,xlsx=100,jb=100000;
int bao[110],dy=1,mima;
struct JN{
    string nm;
    int nb,hl;
}jn[30]; 
int ss[5];
void hf();
void h1(string s)
{
    int l=s.length(),j;
    for(int i=0;i<l;i++)
    {
        j=0;
        cout<<s[i];
        while(j!=2000000)
            j++;
    }
}
void h2()
{
    system("cls");
} 
void hg();
void hca(); 
void hca()
{
    char c;
    h1("A:还魂丹:250币   B:血瓶:20币   C:能量瓶:15币 D:退出此界面\n");
    c=getche();
    h2();
    system("cls");
    if(c=='A')
    {
        if(jb>=250)
        {
            jb-=250;
            bao[1]++;
            h1("购买成功\n");
        }
        else
            h1("金币不足\n");
    }
    if(c=='B')
    {
        if(jb>=20)
        {
            jb-=20;
            bao[2]++;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    } 
    if(c=='C')
    {
        if(jb>=15)
        {
            jb-=15;
            bao[3]++;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    } 
}
void hcb()
{
    char c;
    h1("A:剧毒之刺:50币 B:毒雾:80币 C:巨力斩:30币 D:吸血狂魔:80币 E:千古冰封:80币 F:寒冰刃:30币");
    h1(" G:辉煌之力:50币 H:养精蓄锐:50币 I:极置千连拍:30币 Z:退出此界面\n");
    c=getche();
    h2();
    system("cls");
    if(c=='A')
    {
        h1("剧毒之刺可以对单个敌人造成持续伤害\n");
        if(jb>=50)
        {
            jb-=50;
            jn[4].nb=1;
            jn[4].hl=70;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    }
    if(c=='B')
    {
        h1("毒雾可以对多个敌人造成持续伤害\n");
        if(jb>=80)
        {
            jb-=80;
            jn[8].nb=1;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    }
    if(c=='C')
    {
        h1("巨力斩可以对单个敌人造成较高伤害\n");
        if(jb>=30)
        {
            jb-=30;
            jn[1].nb=1;
            h1("购买成功\n");
            jn[1].hl=40; 
        } 
        else
            h1("金币不足\n");
    }
    if(c=='D')
    {
        h1("吸血狂魔可以令自己造成的伤害化为回血\n");
        if(jb>=80)
        {
            jb-=80;
            jn[9].nb=1;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    }
    if(c=='E')
    {
        h1("千古冰封可以让单个敌人无法行动\n");
        if(jb>=80)
        {
            jb-=80;
            jn[7].nb=1;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    }
    if(c=='F')
    {
        h1("寒冰刃可以对单个敌人造成伤害并无法行动\n");
        if(jb>=30)
        {
            jb-=30;
            jn[3].nb=1;
            h1("购买成功\n");
            jn[3].hl=60;
        } 
        else
            h1("金币不足\n");
    }
    if(c=='G')
    {
        h1("辉煌之力可以让伤血=增加能量\n");
        if(jb>=50)
        {
            jb-=50;
            jn[6].nb=1;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    }
    int czp;
    if(c=='H')
    {
        h1("养精蓄锐可以恢复血量\n");
        if(jb>=50)
        {
            jb-=50;
            jn[5].nb=1;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    }
    if(c=='I')
    {
        h1("极置千连拍可以对多个敌人造成伤害\n");
        if(jb>=30)
        {
            jb-=30;
            jn[2].nb=1;
            jn[2].hl=55;
            h1("购买成功\n");
        } 
        else
            h1("金币不足\n");
    }
    Sleep(1000);
}
void hcca()
{
    char c;
    h1("A:普通刀:40币   B:青铜刀:70币   C:白银刀:150币   D:钻石刀:250币   E:退出此界面\n");
    c=getche();
    system("cls");
    if(c=='A')
    {
        if(jb>=40)
        {
            jb-=40;
            ss[1]=1;
            h1("购买成功  穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='B')
    {
        if(jb>=70)
        {
            jb-=70;
            ss[1]=2;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='C')
    {
        if(jb>=150)
        {
            jb-=150;
            ss[1]=3;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='D')
    {
        if(jb>=250)
        {
            jb-=250;
            ss[1]=4;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
}
void hccb()
{
    char c;
    h1("A:普通甲:40币   B:青铜甲:70币   C:白银甲:150币   D:钻石甲:250币   E:退出此界面\n");
    c=getche();
    h2();
    system("cls");
    if(c=='A')
    {
        if(jb>=40)
        {
            jb-=40;
            ss[2]=1;
            h1("购买成功  穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='B')
    {
        if(jb>=70)
        {
            jb-=70;
            ss[2]=2;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='C')
    {
        if(jb>=150)
        {
            jb-=150;
            ss[2]=3;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='D')
    {
        if(jb>=250)
        {
            jb-=250;
            ss[2]=4;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
}
void hccc()
{
    char c;
    h1("A:普通光环:40币   B:青铜光环:70币   C:白银光环:150币   D:钻石光环:250币   E:退出此界面\n");
    c=getche();
    system("cls");
    if(c=='A')
    {
        if(jb>=40)
        {
            jb-=40;
            ss[3]=1;
            h1("购买成功  穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='B')
    {
        if(jb>=70)
        {
            jb-=70;
            ss[3]=2;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='C')
    {
        if(jb>=150)
        {
            jb-=150;
            ss[3]=3;
            h1("购买成功   穿戴成功\n");
            MessageBox(NULL,"购买成功   穿戴成功","陈室战争",MB_OK); 
        }
        else
            h1("金币不足\n");
    } 
    if(c=='D')
    {
        if(jb>=250)
        {
            jb-=250;
            ss[3]=4;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    }  
}
void hccd()
{
    char c;
    h1("A:普通手镯:40币   B:青铜手镯:70币   C:白银手镯:150币   D:钻石手镯:250币   E:退出此界面\n");
    c=getche();
    system("cls");
    if(c=='A')
    {
        if(jb>=40)
        {
            jb-=40;
            ss[4]=1;
            h1("购买成功  穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='B')
    {
        if(jb>=70)
        {
            jb-=70;
            ss[4]=2;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='C')
    {
        if(jb>=150)
        {
            jb-=150;
            ss[4]=3;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
    if(c=='D')
    {
        if(jb>=250)
        {
            jb-=250;
            ss[4]=4;
            h1("购买成功   穿戴成功\n");
        }
        else
            h1("金币不足\n");
    } 
}
void hcc()
{
    char c;
    h1("A:攻击类   B:防御类   C:回血类   D:回能类   E:退出此界面\n");
    c=getche();
    system("cls");
    if(c=='A')
        hcca();
    if(c=='B')
        hccb();
    if(c=='C')
        hccc();
    if(c=='D')
        hccd();
}
void hc()
{
    char c;
    h1("欢迎光临!\n请问你要买些什么?\n");
    while(1)
    { 
        h1("A:恢复 B:技能 C:装备 D:退出商店\n");
        c=getche();
        system("cls");
        if(c=='D')
            break;
        if(c=='A')
            hca(); 
        if(c=='B')
            hcb();
        if(c=='C')
            hcc(); 
    }
}
void hd(int a,int b,int c,int d,int e,int f)
{
    int fff=0;
    if(ss[1]==1)fff=6;
    if(ss[1]==2)fff=14;
    if(ss[1]==3)fff=30;
    if(ss[1]==4)fff=66;
    int aaa=0;
    if(ss[2]==1)aaa=30;
    if(ss[2]==2)aaa=70;
    if(ss[2]==3)aaa=150;
    if(ss[2]==4)aaa=330;
    h1(n+"勇士\n您还剩");
    cout<<a<<"+"<<aaa;
    h1("滴血\n您的攻击为");
    cout<<d<<"+"<<fff<<endl;
    h1("您现在");
    cout<<c;
    h1("级\n能量值为");
    cout<<e;
    h1("\n经验");
    cout<<b<<endl<<f;
    h1("金币");
    h1("\n点击任意键继续");
    int a0=getche(); 
}
int chenzhepeng;
void he()
{
    h1("0.普通攻击:");
    cout<<gj<<endl;
    for(int i=1;i<=10;i++)
    {
        if(jn[i].nb>=1)
        {
            cout<<i<<".";
            h1(jn[i].nm);
            cout<<jn[i].nb<<"级"<<endl;
        }
    } 
    h1("你准备升级那个技能?\n");
    int x;
    x=getche();
    system("cls");
    if(x=='0')
    {
        if(jb>=50)
        { 
            gj+=5;
            jb-=50;
        }
        else
            h1("金币不足");
    }
    else if(x>'0')
    {
        x-='0';
        if(jb>=50*jn[x].nb&&jn[x].nb>=1)
        { 
            jn[x].nb++;
            jb-= 50*jn[x].nb;
            jn[x].hl*=1.3; 
        } 
        else if(jb<50*jn[x].nb)
            h1("金币不足");
        else
            h1("没有此技能!");
    }
    h1("/n点击任意键继续");
    int a0=getche(); 
}
void hba()
{
    if(ss[1]>=1)
    {
        if(ss[1]==1)h1("普通");
        if(ss[1]==2)h1("青铜");
        if(ss[1]==3)h1("白银");
        if(ss[1]==4)h1("钻石");
        h1("刀");
    }
    if(ss[2]>=1)
    {
        if(ss[2]==1)h1("\n普通");
        if(ss[2]==2)h1("\n青铜");
        if(ss[2]==3)h1("\n白银");
        if(ss[2]==4)h1("\n钻石");
        h1("甲");
    }
    if(ss[3]>=1)
    {
        if(ss[3]==1)h1("\n普通");
        if(ss[3]==2)h1("\n青铜");
        if(ss[3]==3)h1("\n白银");
        if(ss[3]==4)h1("\n钻石");
        h1("光环");
    }
    if(ss[4]>=1)
    {
        if(ss[4]==1)h1("\n普通");
        if(ss[4]==2)h1("\n青铜");
        if(ss[4]==3)h1("\n白银");
        if(ss[4]==4)h1("\n钻石");
        h1("手镯");
    }
    h1("\n点击任意键继续");
    int a0=getche(); 
}
void hbb()
{
    h1("1.还魂丹   数量:");
    cout<<bao[1];
    h1("\n2.血瓶   数量:"); 
    cout<<bao[2];
    h1("\n2.能量瓶   数量:"); 
    cout<<bao[3];
    h1("                    ");
    h1("\n点击任意键继续");
    int a0=getche(); 
}
void hb()
{
    char c;
    h1("A.身上装备   B.背包物件   C.什么都不看\n");
    c=getche();
    system("cls");
    if(c=='A')hba();
    if(c=='B')hbb();
}
struct A{
    string mn;
    int g,f,a,anda,zt,ztsj;//zt:状态 ztsj:状态时间 
    struct Boos{
        string bosnm;
        int bsjn;
    }boos[10];
}zx[50];
int sw(A z[])
{
    for(int i=1;i<=30;i++)
    {
        if(z[i].f>=1)
            return 1;
    }
    return 0;
}
int ssd(int l1,int ss)
{
    for(int i=0;i<=30;i++)
    {
        if(zx[i].a!=0&&zx[i].f>0)
        {
            zx[i].f-=ss;
            zx[i].f=max(zx[i].f,0);
            if(l1==2)return i;
            if(l1!=1)return 0;
        }
    }
    return 0;
}
int zhd(A z[])
{
    int fff=0;
    if(ss[1]==1)fff=6;
    if(ss[1]==2)fff=14;
    if(ss[1]==3)fff=30;
    if(ss[1]==4)fff=66;
    char c=65;
    if(ss[2]==1)xl+=30;
    if(ss[2]==2)xl+=70;
    if(ss[2]==3)xl+=150;
    if(ss[2]==4)xl+=330;
    while(sw(z))
    {   
        while(1)
        {
            h2();
            int xl1=xl;
            if(ss[3]==1)xl=min(xlsx,xl+7);
            if(ss[3]==2)xl=min(xlsx,xl+15);
            if(ss[3]==3)xl=min(xlsx,xl+35);
            if(ss[3]==4)xl=min(xlsx,xl+80);
            if(xl1<xl){h1("你的装备使你回复");cout<<xl-xl1;h1("滴血\n"); }
            int nl1=nl;
            if(ss[4]==1)nl=min(nlsx,nl+5);
            if(ss[4]==2)nl=min(nlsx,nl+11);
            if(ss[4]==3)nl=min(nlsx,nl+25);
            if(ss[4]==4)nl=min(nlsx,nl+60);
            if(nl1<nl){h1("你的装备使你回复");cout<<nl-nl1;h1("点能量\n"); }
            h1("你");
            cout<<xl<<"滴血\n";
            cout<<nl<<"能量\n";
            c=66;
            if(z[0].a==1&&z[0].f>0)cout<<"墙:"<<z[0].f<<"滴血\n";
            for(int i=1;i<=30;i++)
                if(z[i].a==1&&z[i].f>0)
                {
                    cout<<c<<":"<<z[i].f<<"滴血"<<z[i].g<<"伤害";
                    if(z[i].zt==1)h1("  被冰冻");
                    if(z[i].zt==2)h1("  以中毒");  
                    cout<<endl;
                    c++;
                }
                else if(z[i].a==1)
                    c++;
                else if(z[i].a==2&&z[i].f>0)
                {
                    cout<<z[i].mn<<":"<<z[i].f<<"滴血"<<z[i].g<<"伤害";
                    if(z[i].zt==1)h1("  被冰冻"); 
                    if(z[i].zt==2)h1("  以中毒"); 
                    cout<<endl;
                }
            c=66;
            cout<<"你      ";
            if(z[0].a==1&&z[0].f>0)cout<<"墙";
            for(int i=1;i<=30;i++)
            {
                if(z[i].a==1&&z[i].f>0)
                {
                    cout<<c;
                    c++;
                }
                else if(z[i].a==1)
                {
                    c++;
                    cout<<' ';
                }
                else if(z[i].a==2&&z[i].f>0)
                {
                    cout<<z[i].mn;
                }
                else h1(" ");
            }
            h1("\n你要做什么  A.用技能或普攻  B.嗑药");
            char x;
            x=getche();
            if(x=='B')
            {
                h2();
                if(bao[2])
                {
                    h1("\n你还剩血瓶");
                    cout<<bao[2];
                    h1("个"); 
                }
                if(bao[3])
                {
                    h1("\n你还剩能量瓶");
                    cout<<bao[3];
                    h1("个\n"); 
                }
                if(!(!bao[2]&&!bao[3])){
                h1("A.用血瓶  B.用能量瓶");
                x=getche();
                if(x=='A')
                {
                    if(bao[2])
                    {
                        xl+=0.3*xlsx;
                        h1("使用成功");
                        Sleep(1000);
                    }
                    else
                    {
                        h1("没有此物品");
                        Sleep(1000);
                    }
                }
                if(x=='B')
                {
                    if(bao[3])
                    {
                        h1("使用成功");
                        Sleep(1000);
                    }
                    else
                    {
                        nl+=0.3*nlsx;
                        h1("没有此物品");
                        Sleep(1000);
                    }
                }
                }
            }
            else break;
        }
        h2();
        char x;
        h1("\n0.普通攻击:");
        cout<<gj<<"+"<<fff<<endl;
        for(int i=1;i<=10;i++)
        {
            if(jn[i].nb>=1)
            {
                cout<<i<<".";
                h1(jn[i].nm);
                cout<<jn[i].nb<<"级"<<endl;
            }
        } 
        h1("你准备使用那个技能?\n");
        int xx;
        x=getche();
        system("cls");
        if(x=='0')xx=ssd(0,gj+fff);
        if(x=='1')
        {
            if(nl>=jn[1].hl&&jn[1].nb)
            {
                xx=ssd(0,gj*2+fff*2+(gj+fff)*((jn[1].nb-1)*0.5));
                nl-=jn[1].hl;
            }
            else h1("没蓝了");
        }
        if(x=='2')
        {
            if(nl>=jn[2].hl&&jn[2].nb)
            {
                xx=ssd(1,gj*0.8+fff*0.8+0.8*(gj+fff)*((jn[2].nb-1)*0.2));
                nl-=jn[2].hl;
            }
            else h1("没蓝了");
        }
        if(x=='3')
        {
            if(nl>=jn[3].hl&&jn[3].nb)
            {
                xx=ssd(2,gj*1.2+fff*1.5+1.2*(gj+fff)*((jn[3].nb-1)*0.3));
                nl-=jn[3].hl;
                z[xx].zt=1;
                z[xx].ztsj=3+(jn[3].nb-1)*0.34;
            }
            else h1("没蓝了");
        }
        if(x=='4')
        {
            if(nl>=jn[4].hl&&jn[4].nb)
            {
                xx=ssd(2,gj*1.1+fff+1.1*(gj+fff)*(jn[4].nb-1)*0.4);
                nl-=jn[4].hl;
                z[xx].zt=2;
                z[xx].ztsj=3+(jn[4].nb-1)*0.34;
            }
        }
        for(int i=1;i<=30;i++)
            if(z[i].a==1&&z[i].f>0)
            {
                if(z[i].zt==2)
                    z[i].f-=gj*0.4+jn[4].nb*gj*0.08;
                if(z[i].zt!=1)
                    xl-=z[i].g;
                if(z[i].zt!=0)
                    z[i].ztsj--;
                if(z[i].ztsj==0)
                    z[i].zt=0;
                if(xl<=0)
                {
                    h1("YOUR LIANG LE!!!\n");
                    if(bao[1])
                    {
                        h1("是否使用还魂丹\n你还剩");
                        cout<<bao[1];
                        h1("个还魂丹\nA使用B不使用\n");
                        char c;
                        c=getche();
                        h2(); 
                        if(c=='A')
                        {
                            bao[1]--;
                            xl=xlsx;
                        }
                        else
                            return 0;
                    }
                    else 
                        return 0;
                }
            }
            else if(z[i].a==2&&z[i].f>0)
            {
                if(z[i].zt==2)
                    z[i].f-=gj*0.4+jn[4].nb*gj*0.08;
                if(z[i].zt!=1)
                    if(rand()%3!=2)xl-=z[i].g;
                    else
                    {
                        h1(z[i].boos[1].bosnm);
                        if(z[i].boos[1].bsjn==1)
                        {
                            z[0].a=1;
                            z[0].f=z[i].f*0.5;
                        }
                    }
                if(z[i].zt!=0)
                    z[i].ztsj--;
                if(z[i].ztsj==0)
                    z[i].zt=0;
                if(xl<=0)
                {
                    h1("YOUR LIANG LE!!!\n");
                    if(bao[1])
                    {
                        h1("是否使用还魂丹\n你还剩");
                        cout<<bao[1];
                        h1("个还魂丹\nA使用B不使用\n");
                        char c;
                        c=getche();
                        h2(); 
                        if(c=='A')
                        {
                            bao[1]--;
                            xl=xlsx;
                        }
                        else
                            return 0;
                    }
                    else 
                        return 0;
                }
            }
    }
    return 1; 
}
int g[5]={1,1,1,1,1};
void had()
{
    char c;
    char czp;
    h1("勇士,您要去哪儿\n");
    h1("A 雪地  B蝙蝠天际  C妖窟\n"); 
    czp=getche();
    system("cls");
    if(czp=='A')
    {
        h1("第几关???\n");
        c=getche();
        h2();
        if(c=='1')
        {
            zx[1].a=1;
            zx[1].g=10;
            zx[1].f=35;
            if(zhd(zx))
            {
                cout<<"战斗胜利!!!";
                h1("          ");
                g[1]++;
                jb+=20;
                jy+=5;
                xl=xlsx;
                nl=nlsx; 
                system("cls");
            }
            else
            {
                cout<<"落地成盒";
                xl=xlsx;
                nl=nlsx;
                h1("          ");
                system("cls");
            }
            zx[1].a=0;
            zx[1].g=0;
            zx[1].f=0;
        }
        if(c=='2')
        {
            if(c-'0'<=g[1])
            {
                zx[1].a=1;
                zx[1].g=15;
                zx[1].f=80;
                if(zhd(zx))
                {
                    cout<<"战斗胜利!!!";
                    h1("          ");
                    g[1]++;
                    system("cls");
                    jb+=30;
                    jy+=7;
                    xl=xlsx;
                    nl=nlsx;
                }
                else
                {
                    cout<<"再接再厉";
                    xl=xlsx;
                    nl=nlsx;
                    h1("          ");
                    system("cls");
                }
            }   
            else h1("请先通过上一关"); 
            zx[1].a=0;
            zx[1].g=0;
            zx[1].f=0;
        }
        if(c=='3')
        {
            if(c-'0'<=g[1])
            {
                zx[1].a=1;
                zx[1].g=20;
                zx[1].f=140;
                zx[2].a=1;
                zx[2].g=25;
                zx[2].f=100;
                if(zhd(zx))
                {
                    cout<<"战斗胜利!!!";
                    h1("          ");
                    g[1]++;
                    system("cls");
                    jb+=50;
                    jy+=9;
                    xl=xlsx;
                    nl=nlsx;
                }
                else
                {
                    cout<<"再接再厉";
                    h1("          ");
                    xl=xlsx;
                    nl=nlsx;
                    system("cls");
                }
            }   
            else h1("请先通过上一关"); 
            zx[1].a=0;
            zx[1].g=0;
            zx[1].f=0;
            zx[2].a=0;
            zx[2].g=0;
            zx[2].f=0;
        }
        if(c=='4')
        {
            if(c-'0'<=g[1])
            {
                zx[1].a=1;
                zx[1].g=15;
                zx[1].f=100;
                zx[2].a=1;
                zx[2].g=18;
                zx[2].f=180;
                if(zhd(zx))
                {
                    cout<<"战斗胜利!!!";
                    h1("          ");
                    g[1]++;
                    system("cls");
                    jb+=70;
                    jy+=15;
                    xl=xlsx;
                    nl=nlsx;
                }
                else
                {
                    cout<<"再接再厉";
                    h1("          ");
                    xl=xlsx;
                    nl=nlsx;
                    system("cls");
                }
            }   
            else h1("请先通过上一关"); 
            zx[1].a=0;
            zx[1].g=0;
            zx[1].f=0;
            zx[2].a=0;
            zx[2].g=0;
            zx[2].f=0;
        }
        if(c=='5')
        {
            if(c-'0'<=g[1])
            {
                h1("Boos来袭!!!              \n"); 
                zx[1].a=1;
                zx[1].g=12;
                zx[1].f=100;
                zx[2].a=2;
                zx[2].mn="冰魔";
                zx[2].boos[1].bosnm="冰之墙";
                zx[2].boos[1].bsjn=1;
                zx[2].f=170;
                zx[2].g=15;
                if(zhd(zx))
                {
                    cout<<"战斗胜利!!!";
                    h1("          ");
                    g[1]++;
                    system("cls");
                    jb+=120;
                    jy+=25;
                    xl=xlsx;
                    nl=nlsx;
                }
                else
                {
                    cout<<"再接再厉";
                    xl=xlsx;
                    nl=nlsx;
                    h1("          ");
                    system("cls");
                }
            }   
            else h1("请先通过上一关"); 
            zx[1].a=0;
            zx[1].g=0;
            zx[1].f=0;
            zx[2].a=0;
            zx[2].g=0;
            zx[2].f=0;
            zx[2].boos[1].bosnm="";
            zx[2].mn="";
            zx[2].boos[1].bsjn=0;
        }
        if(c=='6')
        {
            if(c-'0'<=g[1])
            {
                zx[1].a=1;
                zx[1].g=18;
                zx[1].f=120;
                zx[2].a=1;
                zx[2].g=40;
                zx[2].f=120;
                zx[3].a=1;
                zx[3].g=30;
                zx[3].f=250; 
                if(zhd(zx))
                {
                    cout<<"战斗胜利!!!";
                    h1("          ");
                    g[1]++;
                    system("cls");
                    jb+=190;
                    xl=xlsx;
                    nl=nlsx;
                    jy+=40;
                }
                else
                {
                    cout<<"再接再厉";
                    h1("          ");
                    system("cls");
                    xl=xlsx;
                    nl=nlsx;
                }
            }   
            else h1("请先通过上一关"); 
            zx[1].a=0;
            zx[1].g=0;
            zx[1].f=0;
            zx[2].a=0;
            zx[2].g=0;
            zx[2].f=0;
            zx[3].a=0;
            zx[3].g=0;
            zx[3].f=0;
        }
        if(c=='7')
        {
            if(c-'0'<=g[1])
            {
                zx[1].a=1;
                zx[1].g=24;
                zx[1].f=170;
                zx[2].a=1;
                zx[2].g=60;
                zx[2].f=120;
                zx[3].a=1;
                zx[3].g=30;
                zx[3].f=300; 
                if(zhd(zx))
                {
                    cout<<"战斗胜利!!!";
                    h1("          ");
                    g[1]++;
                    system("cls");
                    jb+=260;
                    xl=xlsx;
                    nl=nlsx;
                    jy+=60;
                }
                else
                {
                    cout<<"再接再厉";
                    h1("          ");
                    system("cls");
                    xl=xlsx;
                    nl=nlsx;
                }
            }   
            else h1("请先通过上一关"); 
            zx[1].a=0;
            zx[1].g=0;
            zx[1].f=0;
            zx[2].a=0;
            zx[2].g=0;
            zx[2].f=0;
            zx[3].a=0;
            zx[3].g=0;
            zx[3].f=0;
        }
    }
}
string nx[1010];
struct CD{
    int cldj,cljy,czs;
    int cxl,cgj,cnl,cnlsx,cjy,cdj,cxlsx,cjb;
    int cbao[110],cdy,cmima;
    struct CJN{
        string nm;
        int nb,hl;
    }cjn[30]; 
    int css[5];
    int cg[5];
    string cn;
}a[1010];
void h3()
{
    int a;
    a=0;
    ifstream cin("1.out");
    while(a++)cin>>nx[a];
    cin.close();
}
void h4()
{
    freopen("1.out","w",stdout);
    cout<<endl<<n;
    fclose(stdout);
}
void gotoXY(HANDLE hOut, int x, int y)
{
    COORD pos;
    pos.X = x;
    pos.Y = y;
    SetConsoleCursorPosition(hOut, pos);
}
int num,bk=0,a123;
string qi="陈室战争之前言\n传说在离我们三千元光年的地方,有一个同我们一样的平行世界,在那里有一个鼎盛的家族,名为陈室。可是有一天,风云变幻,"; 
int main()
{
    g[1]=10; 
    HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);
    gotoXY(hOut,0,0);//光标到左上角 
    qi=qi+"一只只亡灵从地牢中破封而出,陈室的勇士们为了保卫祖国,纷纷死在亡灵的爪下,这一切似乎在被一个神秘人掌控着,而你和很多人一样逃跑了。";
    qi=qi+"历经千辛万苦,你终于跑到了一个未知的地方\n";
    int cpp12=0;
    string szp;
    char a=-77,b=-62,c=-122,d=-76,e=-59,f=-12;
    szp[0]=a;
    szp[1]=b;
    szp[2]=c;
    szp[3]=d;
    szp[4]=e;
    szp[5]=f;
    string zuoz="作者:";
    jn[1].nm="巨力斩";   
    jn[2].nm="极置千连拍";
    jn[3].nm="寒冰刃";
    jn[4].nm="剧毒之刺";
    jn[5].nm="养精蓄锐";
    jn[6].nm="辉煌之力";
    jn[7].nm="千古冰封"; 
    jn[8].nm="毒雾";
    jn[9].nm="吸血狂魔";
    MessageBox(NULL,"欢迎来到陈室战争,作者:陈喆鹏","陈室战争",MB_OK); 
    h1("请填写您的姓名:");
    cin>>n;
    h1("请设置密码");
    cin>>mima; 
    while(1)
    {
        while(1)
            if(jy>=dj*10)
            {
                jy-=dj*10;
                h1("升级了!!!");
                xl=xlsx=xlsx*1.3;
                gj*=1.3;
                dj++;
                nl=nlsx=nlsx*1.7;
            }
            else break;
        h1("第");
        cout<<dy;
        h1("天\n请问你要干什么?\nA:夺回祖国 B:查看背包 C:进入商城 D:查看状态 E:学习技能 F:炼药炉 G:设置 Z:不玩了\n");
        zsm=getche();
        system("cls");
        if(zsm=='D')
            hd(xl,jy,dj,gj,nl,jb); 
        if(zsm=='C')
            hc();
        if(zsm=='E')
            he();
        if(zsm=='G')
        {
            h1("改变屏幕色彩   :\n0:黑  1:蓝色 2:绿色 3:湖蓝色 4:红色 5:紫色 6:黄色 7:白色 \n");
            char c,c1;
            c=getche();
            h2();
            h1("\n改变字体色彩   :\nA=淡绿色 B=淡浅绿色 C=淡红色 D=淡紫色 E=淡黄色 F=亮白色\n");
            c1=getche();
            h2();
            if(c=='0')
            {
                if(c1=='A')system("color 0A");
                if(c1=='B')system("color 0B");
                if(c1=='C')system("color 0C");
                if(c1=='D')system("color 0D");
                if(c1=='E')system("color 0E");
                if(c1=='F')system("color 0F");
            } 
            if(c=='1')
            {
                if(c1=='A')system("color 1A");
                if(c1=='B')system("color 1B");
                if(c1=='C')system("color 1C");
                if(c1=='D')system("color 1D");
                if(c1=='E')system("color 1E");
                if(c1=='F')system("color 1F");
            } 
            if(c=='2')
            {
                if(c1=='A')system("color 2A");
                if(c1=='B')system("color 2B");
                if(c1=='C')system("color 2C");
                if(c1=='D')system("color 2D");
                if(c1=='E')system("color 2E");
                if(c1=='F')system("color 2F");
            } 
            if(c=='3')
            {
                if(c1=='A')system("color 3A");
                if(c1=='B')system("color 3B");
                if(c1=='C')system("color 3C");
                if(c1=='D')system("color 3D");
                if(c1=='E')system("color 3E");
                if(c1=='F')system("color 3F");
            } 
            if(c=='4')
            {
                if(c1=='A')system("color 4A");
                if(c1=='B')system("color 4B");
                if(c1=='C')system("color 4C");
                if(c1=='D')system("color 4D");
                if(c1=='E')system("color 4E");
                if(c1=='F')system("color 4F");
            } 
            if(c=='5')
            {
                if(c1=='A')system("color 5A");
                if(c1=='B')system("color 5B");
                if(c1=='C')system("color 5C");
                if(c1=='D')system("color 5D");
                if(c1=='E')system("color 5E");
                if(c1=='F')system("color 5F");
            } 
            if(c=='6')
            {
                if(c1=='A')system("color 6A");
                if(c1=='B')system("color 6B");
                if(c1=='C')system("color 6C");
                if(c1=='D')system("color 6D");
                if(c1=='E')system("color 6E");
                if(c1=='F')system("color 6F");
            } 
            if(c=='7')
            {
                if(c1=='A')system("color 7A");
                if(c1=='B')system("color 7B");
                if(c1=='C')system("color 7C");
                if(c1=='D')system("color 7D");
                if(c1=='E')system("color 7E");
                if(c1=='F')system("color 7F");
            } 
        } 
        if(zsm=='F')
        {
            if(dj>=4)hf();
            else
            {
                h1("炼丹炉4级开放,请你谅解☆☆☆☆☆");
                MessageBox(NULL,"炼丹炉4级开放,请你谅解☆☆☆☆☆","陈室战争",MB_OK);
            }
        } 
        if(zsm=='Z')
        {
            cout<<zuoz<<szp; 
            ofstream mycout("1.out");
            mycout<<"\b";
            mycout.close();
            return 0;
        }   
        if(zsm=='B')
            hb();
        if(zsm=='A')
        {
            had();
        }   
        if(jy>=dj*100)
        {
            jy-=dj*100;
            dj++;
        }
        dy++;
        h2();
    } 
//  fclose(stdin);
//  fclose(stdout);
    return 0;
}
void hf()
{
    while(1)
    {
        char i;
        string xx;xx="";
        for(int i=1;i<=ldj;i++)xx=xx+"☆";
        h1("欢迎来到"+xx+"炼丹炉/n");  
        cout<<"你去哪?A.炉子 B.算命先生 C.许愿池 D.不干啥 E.获得"<<ldj+1<<"星炼丹炉出入证";
        i=getche(); 
        h2();
        if(i=='E')
        {
            if(ljy>=ldj*50)
            {
                ljy-=ldj*50;
                ldj++;
                cout<<"成功获得";
                h1("你还剩");
                cout<<ljy;
                h1("张炼丹卷");
                h2();
                return ; 
            }
            else
            {
                h1("炼丹卷不足,你还差");
                cout<<ldj*50-ljy;
                h1("张炼丹卷                                       ");
                h2();
                h1("任意键继续"); 
                getche();
                return ;
            }
        } 
        if(i=='D')return ;
        if(i=='C')
        {
            while(i!='4')
            {
                cout<<"1.投20金币 2.投1钻石 3.跳池 4.离开\n"; 
                i=getche();
                if(i=='1')
                {
                    jb-=20;
                    int a=rand()%1000;
                    if(a<=700)
                    {
                        h1("没有变化");
                        Sleep(2000);
                    }
                    if(a>800&&a<=900)
                    {
                        h1("天上掉下来十张炼丹卷");
                        ljy+=10;
                        Sleep(2000);
                    }
                    if(a>700&&a<=800)
                    {
                        h1("天上掉下来2张炼丹卷");
                        ljy+=2;
                        Sleep(2000);
                    }
                    if(a>900&&a<=950)
                    {
                        h1("天上掉下来一颗钻石");
                        zs++;
                        Sleep(2000);
                    }
                    if(a>950)
                    {
                        h1("天上掉下来三颗钻石");
                        zs+=3;
                        Sleep(2000);
                    }
                    h2(); 
                } 
                if(i=='2')
                {
                    zs--;
                    int a=rand()%1000;
                    if(a<=300)
                    {
                        h1("没有变化");
                        Sleep(2000);
                    }
                    if(a>300&&a<=380)
                    {
                        h1("天上掉下来十张炼丹卷");
                        ljy+=10;
                        Sleep(2000);
                    }
                    if(a>380&&a<=600)
                    {
                        h1("天上掉下来2张炼丹卷");
                        ljy+=2;
                        Sleep(2000);
                    }
                    if(a>600&&a<=700)
                    {
                        h1("天上掉下来一颗钻石");
                        zs++;
                        Sleep(2000);
                    }
                    if(a>900)
                    {
                        h1("天上掉下来五颗钻石");
                        zs+=5;
                        Sleep(2000);
                    }
                    if(a>700&&a<=900)
                    {
                        h1("天上掉下来二颗钻石");
                        zs+=2;
                        Sleep(2000);
                    }
                    h2(); 
                } 
                if(i=='3')
                {
                    h1("你看到了一个洞");
                    Sleep(1000);
                    h1("\n上面有道结界");
                    h1("\n你被弹出水池");
                    Sleep(2000);
                }
            }   
        }
    }       
    return ;
}

不许改作者


0
已采纳
包涵宇
包涵宇
中级天翼
中级天翼

666!!!

比我做的1083行的游戏略胜一筹

再这里回答前面童鞋的问题
你是怎样做到游戏开始时弹出对话框的?

简单

    MessageBox(NULL,"时间到","~~~~~~~~~~~~~~~~~~", MB_ICONEXCLAMATION|MB_OK);

这是做出弹窗的MessageBox

MessageBox(NULL,"Your computer has been compromised.","Windows(system)", MB_ICONEXCLAMATION|MB_OKCANCEL)==1//这个表示选第1个

MessageBox(NULL,"Your computer has been compromised.","Windows(system)", MB_ICONEXCLAMATION|MB_OKCANCEL)==2//这个表示选第2个

要是说用设么边弹窗最好,我还是选vbs,可以直接访问控制台,系统自带编程语言,还不错。

求采纳!!!

0
潘晨皓
潘晨皓
高级天翼
高级天翼

为什么就在这个页面???

0
0
0
周明轩
周明轩
资深光能
资深光能

你是怎样做到游戏开始时弹出对话框的

0
0
刘景程
刘景程
新手光能
新手光能

我这里也有游戏,要的自取,如果你喜欢,可以加我QQ:3091289472,获取源代码!

游戏下载地址

进入空间后,点开勇者小游戏就可以看到啦!

0
0
被禁言 何冯成
何冯成
中级光能
中级光能

very good!!!

问一下

你是怎样做到游戏开始时弹出对话框的

0
赵逸凡
赵逸凡
初级启示者
初级启示者

你的游戏速度太快了,都不过来,建议sleep函数时间长点

0
0
张帆
张帆
中级天翼
中级天翼

掌声!!!

张帆在2020-03-13 13:36:25追加了内容

问一下

你是怎样做到游戏开始时弹出对话框的

我要回答