《OI之路》卡牌战斗游戏-1.0-启航的飞星
i_am_fsd114514 · · 休闲·娱乐
#include<bits/stdc++.h>
#include<windows.h>
#include<ctime>
#include<conio.h>
#include<bitset>
#define KEY_DOWN(VK_NONAME) ((GetAsyncKeyState(VK_NONAME) & 0x8000) ? 1:0)
using namespace std;
struct bags{
string name;
int num;
}bag[61];
struct role{
int level=1,hand,hp,range,fs,fast,ara,afs,afa;
}had[15001];
struct ren{
string names,jie,plac,jiang;
int pnum;
}lists[1501];
struct die{
string name;
int level=0,hp=300+10*(level-1),range=40+level-1,fs=10+level-1,fast=100,ara=0,afs=0,afa=0;
}jiaocheng[5],dredp[5],shixu[5],bianyichu[5];
string to_strings(int mat){
ostringstream oss;
oss << mat;
string strs=oss.str();
return strs;
}
string k,kj,shu="空间",ji[5001]={" ","空间阈值","数论-染剑","最简连通图","联动","靠你了!","恒阳陨落","卡常-加时","现推图论","并查集-暗刃","星辉剑-连珠","心语念","溯翎之径","光影碎刃","硬性打表"},bao[5001]={" ","[数组已超限]","优化-剪枝","二项值悖论","集群作战","希望与明天","白彗统天","计数-汇时","砂金算法","数据流-破杀","光辉剑-夺魂","涤尘铃","迁翎下递","破影重叠","数据流核爆"},talent1[5001]={" ","天赋一:前行意志 使用爆发后下回合攻击力提升20%","天赋一:染墨白客 攻击力提升20%,防御降低20%","天赋一:学海无涯 我方行动时有50%概率触发追击,造成 50+攻击力*160% 伤害。若此时福斯德不在场上则将场上角色切换为福斯德","天赋一:散沙团结 当编队中有九重秋鸽时,全体获得20%防御增幅和20%伤害增幅","天赋一:感觉不错 每回合结束时为目前场上角色回复 自身生命值上限*20% 的血量","天赋一:圣城荣光 使用战技后为全体施加 自身生命值上限*50% 的护盾","天赋一:优先列序 战技攻击拥有 “时缩 ”目标额外回复10点能量","天赋一:小菜一碟 普攻有5%概率触发[最终大奖]","天赋一:逐逝之锋 使用爆发时若目标死亡则再使用一次爆发,伤害为原本伤害的50%","天赋一:日辉剑-幻象 受到伤害时如有剩余行动点,则消耗一点行动点免疫此伤害","天赋一:祈星 每回合为全体友方回复5点能量","天赋一:鹤翎千羽 普攻时,获得1[翎],队伍切人时如拥有[翎],则消耗1[翎],使行动点不消耗。","天赋一:起身直视吾 造成伤害提高10%","天赋一:灵感源泉 普攻有20%概率获得一层[灵感]"},talent2[5001]={" ","天赋二:迷途之星(Lv20) 战技额外回复10点能量","天赋二:运量符超载(Lv20) 普攻时附加 攻击力*20% 的真实伤害","天赋二:格物致知(Lv20) 使用战技和爆发后必定触发 '天赋一' ","天赋二:联结阵线(Lv20) 被战技选定的友方造成伤害提升20%","天赋二:五谷丰登(Lv20) 使用战技后自身回复20%血量","天赋二:武灵之意(Lv20) 每回合开始回复 攻击力*50% 血量","天赋二:静态破叠(Lv20) 若场上目标没有 “时缩 ”则对其施加一层","天赋二:新定义算法(Lv20) 使用战技时有20%概率对场上敌方造成 攻击力*100% 伤害","天赋二:暗影破风(Lv20) 战斗开始时回复50点能量","天赋二:月辉剑-连击(Lv20) 普攻时有80%概率触发连击,造成 攻击力*120% 伤害并回复一点程序","天赋二:心愿(Lv20) 使用战技时有50%概率返还一点程序","天赋二:起鹤玉涟(Lv20) 第n个回合开始时,若拥有[翎]且[翎]数是n的约数,则获得1个行动点,本回合队伍中全体角色攻击力+20%;若[翎]数是n的倍数,则获得1点程序,本回合队伍中其他角色防御+20%。","天赋二:赐汝无上荣光(Lv20) 每回合开始时如[光明侍从]在场则使其获得一层[光印]","天赋二:范围裂变(Lv20) 普攻如施加[灵感]则额外造成 攻击力*100% 伤害"},talent3[5001]={" ","天赋三:天启将终(Lv40) 当敌方场上角色血量低于自身生命值上限5%则在本回合结束时令其直接死亡","天赋三:时生玉质(Lv40) 使用战技时对目标施加一层'易损'(易损:防御降低20%)","天赋三:实践修养(Lv40) '天赋一' 触发时对敌追加 攻击力*150% 伤害","天赋三:秉烛夜游(Lv40) 使用爆发后全体友方回复30点能量","天赋三:希望无价(Lv40) 使用爆发后为全体友方回复20点能量","天赋三:多元可能(Lv40) 血量归零时回复100%血量并回复50点能量,一次战斗最多触发一次","天赋三:空防破除(Lv40) 使用战技时若目标拥有 “时缩 ”且其防御力小于 自身攻击力*75% 则对其攻击后将其防御归零","天赋三:心如止水(Lv40) 使用战技时为全体友方回复10点能量","天赋三:破灭云烟(Lv40) 爆发击杀目标时额外回复20点能量","天赋三:轮回剑-反伤(Lv40) 受到攻击时有50%概率触发反击,造成 攻击力*150% 伤害并回复生命值上限10%血量","天赋三:同行(Lv40) 使用爆发后额外回复一点行动点","天赋三:月翎鸿阳(Lv40) 当回合数为4的倍数时,失去所有[翎],你每拥有一层[翎]对场上敌人造成 52+83%*攻击力 伤害。","天赋三:欢唱吾之降临(Lv40) [光明侍从]造成伤害提高30%","天赋三:ex大模拟(Lv40) 拥有[灵感]时伤害提高30%"},zn[5001]={" ","战技:空间阈值 消耗一点程序,对敌全体造成 42+攻击力*80% 伤害","战技:数论-染剑 消耗一点程序,对场上敌人造成 40+攻击力*240% 伤害","战技:最简连通图 消耗一点程序,对场上敌人造成 56+攻击力*110% 伤害","战技:联动 一次战斗仅能发动一次,消耗一点程序,选定一名友方作为“联动对象 ”,立刻将“联动对象 ”切换至场上,“联动对象 ”对敌人造成伤害时会获得“联动印记 ”,当“联动印记 ”超过4层则“联动对象 ”失去3层 “联动印记 ”,且九重秋鸽发动一次攻击,对敌全体造成 60+攻击力*220% 伤害","战技:靠你了! 消耗一点程序,选择一名友方,为其恢复 自身生命值上限*50% 血量,并将其置换到场上,回复两点行动点","战技:恒阳陨落 消耗一点程序,对敌全体造成 35+攻击力*110% 伤害","战技:卡常-加时 消耗所有程序,每消耗一点对敌全体造成 34+攻击力*80% 伤害并施加一层时缩","战技:现推图论 不消耗行动点,消耗一点程序,掷出七个 “节点 ”, “节点 ”有概率投出红,白两种颜色,若投出红则保留,当七个 “节点 ”全为红时解锁爆发","战技:并查集-暗刃 消耗一点程序,对场上敌人造成 50+攻击力*270% 伤害并进入 “迷踪 ”状态,立刻切换至后台,造成伤害提高30%,每回合额外回复20点能量,切换至前台时失去此效果","战技:星辉剑-连珠 消耗所有程序,对场上敌方造成 30+攻击力*200%+消耗程序数*攻击力*75% 伤害","战技:心语念 消耗一点程序,选定一个友方,立刻将其置换至前台并使其回复20点能量且伤害提高30%,持续3回合","战技:溯翎之径 消耗一点程序,对场上敌人造成 48+攻击力*250% 伤害,获得2[翎]。","战技:光影碎刃 消耗一点程序,对全体敌人造成 40+攻击力*70% 伤害,并召唤[光明侍从],场上角色行动时[光明侍从]获得1层[光印],至多10层,回合开始时若[光明侍从]拥有[光印]则行动一次,对全体敌人造成 攻击力*28%*光印层数 伤害并消耗所有光印,如使用战技时场上已有[光明侍从]则使[光明侍从]获得3层[光印]","战技:硬性打表 消耗一点程序,消耗当前生命值10%,对场上敌人造成 30+攻击力*290% 伤害并获得[灵感]"},bf[5001]={" ","爆发:[数组已超限] (140能量) 对敌全体造成 89+攻击力*280% 伤害","爆发:优化-剪枝 (100能量) 对场上敌人造成 78+攻击力*340% 伤害并回复一点行动点","爆发:二项值悖论 (80能量) 不消耗行动点,对场上敌人造成 90+攻击力*200% 伤害并回复一点行动点","爆发:集群作战 (120能量) 对场上敌人造成 89+攻击力*150% 伤害,并回复两点程序,一点行动点","爆发:希望与明天(110能量) 使全体回复 自身生命值上限*50% 血量,恢复一点行动点,两点程序","爆发:白彗统天(100能量) 对敌全体造成 50+攻击力*200% 伤害并为我方全体回复30点能量","爆发:计数-汇时(150能量) 对敌全体造成60+攻击力*210% 伤害,对象每拥有一层 “时缩 ”额外造成 攻击力*30% 伤害,使用后移除对象所有 “时缩 ”","爆发:砂金算法 对敌全体造成 80+攻击力*350% 伤害,并有20%概率触发[最终大奖],对场上敌人额外造成 攻击力*450% 伤害","爆发:数据流-破杀(120能量) 对场上敌人造成 50+攻击力*350% 伤害,如释放时在后台则造成 80+攻击力*520% 伤害并恢复一点行动点","爆发:光辉剑-夺魂(130能量) 对场上敌人造成 60+攻击力*380% 伤害并获得3层 “光辉 ”,每回合消耗一层 “光辉 ”对场上敌人造成 攻击力*25% 伤害并回复一点程序","爆发:涤尘铃(90能量) 使全体友方回复10点能量且伤害提高20%,持续3回合,且回复一点行动点","爆发:迁翎下递(110能量) 你没有[翎]时,使用后全队回复 31+攻击力*110% 生命值,你有[翎]且[翎]<=3时,使用后造成 32+攻击力*150% 伤害,你有[翎]且[翎]>=3时,造成 67+攻击力*405% 伤害并消耗所有[翎]。","爆发:破影重叠(140能量) 对场上敌人造成 90+攻击力*320% 伤害,使[光明侍从]获得3层[光印]并立刻行动","爆发:数据流核爆(150能量) 对场上敌人造成 90+攻击力*410% 伤害,每损失1%血量则造成伤害提高1%,使用后清除[灵感]"},name,place[201]={" ","时序海岸","界碑谷","寂静森","破灭防线","感觉挺好的","kommy之圣城-居住区","Armaizae","XingXingOJ题库","星星的神级团队","final world line","团联动广场-东","团联动广场-西","团联动广场-南","团联动广场-北","团联动大楼","kommy之圣城-编译区"},role_name[15001]={" "," ","A 白染 属性:真理","S 福斯德 属性:真理","S 九重秋鸽 属性:时序","A Orz_Sponge_Bob 属性:神隐","S AC__ 属性:编译","A 逝遗 属性:空间","A 铭末 属性:狂乱","S 绮夜 属性:运行","S 锋刃 属性:运行","A 风铃 属性:神隐","S 涟鹤 属性:神隐","A 光璘 属性:时序","A 天睿 属性:真理"},hands[15001]={" ","A 重构运算符"},jianjie[15001]={" ","未知的Oier,失去记忆后为找回记忆开始周游洛谷大陆。","来自团联动的普通Oier,性别女,活泼好动,热情似火。","团联动的学者,性别男,final world line团主,性格孤僻,似乎不大好相处。","团联动组织者,性别男,Armaizae团主,擅长排兵布阵,有作为领导者的精明和气度。","团联动Oier,性别男,感觉挺好的团主,乐于助人,爱好是加班。","团联动Oier,性别男,Kommy之圣城第三代城主,平时看起来不着调,实际上是很可靠的人。","来自上个时代的奇怪Oier,性别男,似乎隐藏着什么秘密...","团联动Oier,性别男,天赋异禀,但喜欢摸鱼,沉默寡言。","团联动Oier,性别女,负责收集情报的特工,行事有原则且高效。","不苟言笑、沉着冷静的Oier,有五把佩剑:日辉剑、月辉剑、星辉剑、光辉剑、轮回剑。","团联动Oier,性别女,年龄在执行部队中最小,渴望帮助他人。","一个没有问题的Oier,性别男,来自隐尘地,热爱蒸蒸日上。","行为奇怪的Oier,性别女,身边时常跟着一个自称[光明侍从]的男子,自称 “守护时间的圣使 ”。","空间维秩协会#19,传闻中神出鬼没,不知为何出现在此..."};
int tis,tonguw[6],tongw[11],first_team[5],second_team[5],bumen,kkks,role=1,haafe[1501],theat=1,sd,have_role[15001],money=10000,stone=16000,xin,a[201][201],part=1,nows=1,thing,t1,t2,team[5],ks[5],nl[5],nx[1501]={0,140,100,80,120,110,100,150,1000000000,120,130,90,110,140,150},Exp=10,zong,lian[5],ceng[5],ns,has[5],hasd[5],dun[5],shisuo[5],dugou[8],zengr[5],zengf[5],mizong,guanghui,bds,hasdl,bntcd[5],bntdcd[5],jdi=80,zdi=10,lin,shine;
bool sf[5]={0,0,0,0,0},chus,havez[5],havezd[5],bisd,bidg,bidf,tsd,ling,hdh,win,bianyi,jiangs[11]={},jiangss[6]={};
enum ConsoleColor{
BLACK = 0,
BLUE = 1,
GREEN = 2,
CYAN = 3,
RED = 4,
MAGENTA = 5,
BROWN = 6,
LIGHT_GRAY = 7,
DARK_GRAY = 8,
LIGHT_BLUE = 9,
LIGHT_GREEN = 10,
LIGHT_CYAN = 11,
LIGHT_RED = 12,
LIGHT_MAGENTA = 13,
YELLOW = 14,
WHITE = 15
};
void Set(ConsoleColor color){
HANDLE hConsole = GetStdHandle(STD_OUTPUT_HANDLE);
SetConsoleTextAttribute(hConsole, color);
}
void say(string x,int a){
for(int i=0;i<x.size();i++){
cout<<x[i];
Sleep(a);
}
}
void save(){
ofstream out("OI之路-存档.oi");
for(int i=1;i<=1500;i++)out<<have_role[i]<<" "<<had[i].level<<" "<<had[i].range<<" "<<had[i].fs<<" "<<had[i].hp<<" "<<had[i].fast<<" "<<had[i].ara<<" "<<had[i].afs<<" "<<had[i].afa<<" ";
out<<money<<" "<<stone<<" "<<role<<" "<<theat<<" "<<part<<" "<<name<<" "<<nows<<" "<<xin<<" "<<Exp<<endl;
out<<kkks<<" "<<team[1]<<" "<<team[2]<<" "<<team[3]<<" "<<team[4]<<endl;
for(int i=1;i<=1500;i++)out<<haafe[i]<<" "<<lists[i].names<<" "<<lists[i].plac<<" "<<lists[i].jie<<" "<<lists[i].pnum<<" "<<lists[i].jiang<<endl;
out<<jdi<<" "<<zdi<<" "<<bisd<<" "<<bumen<<" "<<bianyi<<endl;
for(int i=1;i<=10;i++)out<<tongw[i]<<" ";
for(int i=1;i<=5;i++)out<<tonguw[i]<<" ";
for(int i=1;i<=10;i++)out<<jiangs[i]<<" ";
for(int i=1;i<=5;i++)out<<jiangss[i]<<" ";
out.close();
}
void read(){
ifstream in("OI之路-存档.oi");
for(int i=1;i<=1500;i++)in>>have_role[i]>>had[i].level>>had[i].range>>had[i].fs>>had[i].hp>>had[i].fast>>had[i].ara>>had[i].afs>>had[i].afa;
in>>money>>stone>>role>>theat>>part>>name>>nows>>xin>>Exp;
in>>kkks>>team[1]>>team[2]>>team[3]>>team[4];
for(int i=1;i<=1500;i++)in>>haafe[i]>>lists[i].names>>lists[i].plac>>lists[i].jie>>lists[i].pnum>>lists[i].jiang;
in>>jdi>>zdi>>bisd>>bumen>>bianyi;
for(int i=1;i<=10;i++)in>>tongw[i];
for(int i=1;i<=5;i++)in>>tonguw[i];
for(int i=1;i<=10;i++)in>>jiangs[i];
for(int i=1;i<=5;i++)in>>jiangss[i];
in.close();
}
void shuf(int f){
if(f==1){
had[1].hp+=30;had[1].fs+=5;had[1].range+=20;
return;
}
else if(f==2){
had[2].hp+=25;had[2].fs+=4;had[2].range+=25;
return;
}
else if(f==3){
had[3].hp+=25;had[3].fs+=5;had[3].range+=31;
return;
}
else if(f==4){
had[4].hp+=24;had[4].fs+=6;had[4].range+=29;
return;
}
else if(f==5){
had[5].hp+=35;had[5].fs+=4;had[5].range+=20;
return;
}
else if(f==6){
had[6].hp+=40;had[6].fs+=8;had[6].range+=18;
return;
}
else if(f==7){
had[7].hp+=20;had[7].fs+=3;had[7].range+=30;
return;
}
else if(f==8){
had[8].hp+=25;had[8].fs+=4;had[8].range+=25;
return;
}
else if(f==9){
had[9].hp+=23;had[9].fs+=5;had[9].range+=32;
return;
}
else if(f==10){
had[10].hp+=25;had[10].fs+=6;had[10].range+=27;
return;
}
else if(f==11){
had[11].hp+=30;had[11].fs+=3;had[11].range+=23;
return;
}
else if(f==12){
had[12].hp+=28;had[12].fs+=5;had[12].range+=27;
return;
}
else if(f==13){
had[13].hp+=23;had[13].fs+=4;had[13].range+=29;
return;
}
else if(f==14){
had[14].hp+=20;had[14].fs+=3;had[14].range+=30;
}
}
void check(){
for(int i=1;i<=1500;i++){
if(have_role[i]==0){
if(i==1){
had[1].hp=206;had[1].range=101;had[1].fs=28;had[1].fast=180;
}
else if(i==2){
had[2].hp=198;had[2].range=98;had[2].fs=19;had[2].fast=220;had[2].ara=20;had[2].afs=-20;
}
else if(i==3){
had[3].hp=225;had[3].range=119;had[3].fs=24;had[3].fast=250;
}
else if(i==4){
had[4].hp=210;had[4].range=111;had[4].fs=34;had[4].fast=175;
}
else if(i==5){
had[5].hp=200;had[5].range=89;had[5].fs=30;had[5].fast=300;
}
else if(i==6){
had[6].hp=250;had[6].range=85;had[6].fs=60;had[6].fast=120;
}
else if(i==7){
had[7].hp=150;had[7].range=110;had[7].fs=9;had[7].fast=270;
}
else if(i==8){
had[8].hp=190;had[8].range=100;had[8].fs=10;had[8].fast=250;
}
else if(i==9){
had[9].hp=169;had[9].range=121;had[9].fs=21;had[9].fast=450;
}
else if(i==10){
had[10].hp=200;had[10].range=110;had[10].fs=22;had[10].fast=400;
}
else if(i==11){
had[11].hp=180;had[11].range=85;had[11].fs=25;had[11].fast=400;
}
else if(i==12){
had[12].hp=199;had[12].range=105;had[12].fs=25;had[12].fast=255;
}
else if(i==13){
had[13].hp=190;had[13].range=105;had[13].fs=10;had[13].fast=300;had[13].ara=10;
}
else if(i==14){
had[14].hp=180;had[14].range=105;had[14].fs=12;had[14].fast=370;
}
}
}
}
bool pan(int e){
bool ert=0;
for(int i=1;i<=4;i++){
if(team[i]==e)ert=1;
}
return ert;
}
int getnum(int x){
int g;
for(int i=1;i<=4;i++){
if(team[i]==x)g=i;
}
return g;
}
void wan_e_mi_chi(){
int nowsd=1;
sdd:
system("cls");
save();
cout<<"常驻频次:群星联结"; if(nowsd==1)cout<<"#";
cout<<endl;
cout<<"限定频次:知识即力量"; if(nowsd==2)cout<<"#";
cout<<endl;
cout<<"限定频次:夜长梦多"; if(nowsd==3)cout<<"#";
cout<<endl<<endl;
if(nowsd==1){
Set(LIGHT_BLUE);
cout<<"|----------------------|"<<endl;cout<<"| 常驻频次 \\ ********* |"<<endl;cout<<"| ++++++++ // 群星联结 |"<<endl;cout<<"|----------------------|"<<endl;
Set(WHITE);
cout<<"[p]单抽"<<endl;cout<<"[q]十连抽"<<endl;cout<<"(ws切换卡池,0返回主界面)";
string rew;rew=_getch();
int S[11]={0,4,6,10,12};
int A[11]={0,2,5,7,8,11,13,14};
if(rew=="p"){
if(stone<200)goto sdd;else stone-=200;
system("cls");
say("正在连接频次",50);say("...",1000);Sleep(2000);
system("cls");cout<<endl;int sd=1+rand()%1000;jdi--;zdi--;
if(!jdi)goto god;if(!zdi)goto nb;
if(sd<=5){
god:Set(YELLOW);
cout<<"金色闪光!";jdi=80;int ds=1+rand()%4;
cout<<role_name[S[ds]]<<endl;have_role[S[ds]]=1;
Set(WHITE);
}
else if(sd>5&&sd<=105){
nb:Set(BLUE);
cout<<"蓝色闪光!";zdi=10;int ds=1+rand()%7;
cout<<role_name[A[ds]]<<endl;have_role[A[ds]]=1;
Set(WHITE);
}
else{
int asd=rand()%3;
cout<<"白色闪光!";
if(!asd){
cout<<"经验书*1"<<endl;Exp++;
}else{
cout<<"信用点*100"<<endl;money+=100;
}
}
system("pause");goto sdd;
}
else if(rew=="q"){
if(stone<2000)goto sdd;else stone-=2000;
system("cls");
say("正在连接频次",50);say("...",1000);Sleep(2000);
system("cls");cout<<endl;
for(int i=1;i<=10;i++){
int sd=1+rand()%1000;jdi--;zdi--;
if(!jdi)goto gods;if(!zdi)goto nbs;
if(sd<=5){
gods:Set(YELLOW);
cout<<"金色闪光!";jdi=80;int ds=1+rand()%4;cout<<role_name[S[ds]]<<endl;have_role[S[ds]]=1;
Set(WHITE);
}
else if(sd>5&&sd<=105){
nbs:Set(BLUE);
cout<<"蓝色闪光!";zdi=10;int ds=1+rand()%7;cout<<role_name[A[ds]]<<endl;have_role[A[ds]]=1;
Set(WHITE);
}
else{
int asd=rand()%3;
cout<<"白色闪光!";
if(!asd){
cout<<"经验书*1"<<endl; Exp++;
}else{
cout<<"信用点*100"<<endl;money+=100;
}
}
system("pause");
}
goto sdd;
}
else if(rew=="w"){
if(nowsd>1)nowsd--;goto sdd;
}
else if(rew=="s"){
if(nowsd<3)nowsd++;goto sdd;
}
else return;
}
else if(nowsd==2){
Set(CYAN);
cout<<"|----------------------|"<<endl;
cout<<"|限定频次 |-| =========|"<<endl;
cout<<"|/-/||/-/ |-|知识即力量|"<<endl;
cout<<"|----------------------|"<<endl;
cout<<" S 福斯德 属性:真理 概率UP!"<<endl;
Set(WHITE);
cout<<"[p]单抽"<<endl;cout<<"[q]十连抽"<<endl;cout<<"(ws切换卡池,0返回主界面)";
string rew;
rew=_getch();
int xian=3;
int S[11]={0,4,6,10,12};
int A[11]={0,2,5,7,8,11,13,14};
if(rew=="p"){
if(stone<200)goto sdd;else stone-=200;
system("cls");
say("正在连接频次",50);say("...",1000);Sleep(2000);
system("cls");cout<<endl;int sd=1+rand()%1000;jdi--;zdi--;
if(!jdi)goto godssss;if(!zdi)goto nbssss;
if(sd<=5){
godssss:Set(YELLOW);
int ming=rand()%2;
if(bisd)ming=1;
if(!ming){
cout<<"金色闪光!";jdi=80;int ds=1+rand()%4;
cout<<role_name[S[ds]]<<endl;have_role[S[ds]]=1;bisd=1;
Set(WHITE);
}
else{
cout<<"金色闪光!";jdi=80;
cout<<role_name[xian]<<endl;have_role[xian]=1;bisd=0;
Set(WHITE);
}
}
else if(sd>5&&sd<=105){
nbssss:Set(BLUE);
cout<<"蓝色闪光!";zdi=10;int ds=1+rand()%7;
cout<<role_name[A[ds]]<<endl;have_role[A[ds]]=1;
Set(WHITE);
}
else{
int asd=rand()%3;
cout<<"白色闪光!";
if(!asd){
cout<<"经验书*1"<<endl;Exp++;
}else{
cout<<"信用点*100"<<endl;money+=100;
}
}
system("pause");goto sdd;
}
else if(rew=="q"){
if(stone<2000)goto sdd;else stone-=2000;
system("cls");
say("正在连接频次",50);say("...",1000);Sleep(2000);
system("cls");cout<<endl;
for(int i=1;i<=10;i++){
int sd=1+rand()%1000;jdi--;zdi--;
if(!jdi)goto godsssss;if(!zdi)goto nbsssss;
if(sd<=5){
godsssss:Set(YELLOW);
int ming=rand()%2;
if(bisd)ming=1;
if(!ming){
cout<<"金色闪光!";jdi=80;int ds=1+rand()%4;
cout<<role_name[S[ds]]<<endl;have_role[S[ds]]=1;bisd=1;
Set(WHITE);
}
else{
cout<<"金色闪光!";jdi=80;
cout<<role_name[xian]<<endl;have_role[xian]=1;bisd=0;
Set(WHITE);
}
}
else if(sd>5&&sd<=105){
nbsssss:Set(BLUE);
cout<<"蓝色闪光!";zdi=10;int ds=1+rand()%7;cout<<role_name[A[ds]]<<endl;have_role[A[ds]]=1;
Set(WHITE);
}
else{
int asd=rand()%3;
cout<<"白色闪光!";
if(!asd){
cout<<"经验书*1"<<endl; Exp++;
}else{
cout<<"信用点*100"<<endl;money+=100;
}
}
system("pause");
}
goto sdd;
}
else if(rew=="w"){
if(nowsd>1)nowsd--;goto sdd;
}
else if(rew=="s"){
if(nowsd<3)nowsd++;goto sdd;
}
else return;
}
else if(nowsd==3){
Set(MAGENTA);
cout<<"|----------------------|"<<endl;
cout<<"|限定频次 |-| =========|"<<endl;
cout<<"|-|[]====> | 夜长梦多--|"<<endl;
cout<<"|----------------------|"<<endl;
cout<<" S 绮夜 属性:运行 概率UP!"<<endl;
Set(WHITE);
cout<<"[p]单抽"<<endl;cout<<"[q]十连抽"<<endl;cout<<"(ws切换卡池,0返回主界面)";
string rew;
rew=_getch();
int xian=9;
int S[11]={0,4,6,10,12};
int A[11]={0,2,5,7,8,11,13,14};
if(rew=="p"){
if(stone<200)goto sdd;else stone-=200;
system("cls");
say("正在连接频次",50);say("...",1000);Sleep(2000);
system("cls");cout<<endl;int sd=1+rand()%1000;jdi--;zdi--;
if(!jdi)goto godsss;if(!zdi)goto nbsss;
if(sd<=5){
godsss:Set(YELLOW);
int ming=rand()%2;
if(bisd)ming=1;
if(!ming){
cout<<"金色闪光!";jdi=80;int ds=1+rand()%4;
cout<<role_name[S[ds]]<<endl;have_role[S[ds]]=1;bisd=1;
Set(WHITE);
}
else{
cout<<"金色闪光!";jdi=80;
cout<<role_name[xian]<<endl;have_role[xian]=1;bisd=0;
Set(WHITE);
}
}
else if(sd>5&&sd<=105){
nbsss:Set(BLUE);
cout<<"蓝色闪光!";zdi=10;int ds=1+rand()%7;
cout<<role_name[A[ds]]<<endl;have_role[A[ds]]=1;
Set(WHITE);
}
else{
int asd=rand()%3;
cout<<"白色闪光!";
if(!asd){
cout<<"经验书*1"<<endl;Exp++;
}else{
cout<<"信用点*100"<<endl;money+=100;
}
}
system("pause");goto sdd;
}
else if(rew=="q"){
if(stone<2000)goto sdd;else stone-=2000;
system("cls");
say("正在连接频次",50);say("...",1000);Sleep(2000);
system("cls");cout<<endl;
for(int i=1;i<=10;i++){
int sd=1+rand()%1000;jdi--;zdi--;
if(!jdi)goto godss;if(!zdi)goto nbss;
if(sd<=5){
godss:Set(YELLOW);
int ming=rand()%2;
if(bisd)ming=1;
if(!ming){
cout<<"金色闪光!";jdi=80;int ds=1+rand()%4;
cout<<role_name[S[ds]]<<endl;have_role[S[ds]]=1;bisd=1;
Set(WHITE);
}else{
cout<<"金色闪光!";jdi=80;
cout<<role_name[xian]<<endl;have_role[xian]=1;bisd=0;
Set(WHITE);
}
}
else if(sd>5&&sd<=105){
nbss:Set(BLUE);
cout<<"蓝色闪光!";zdi=10;int ds=1+rand()%7;cout<<role_name[A[ds]]<<endl;have_role[A[ds]]=1;
Set(WHITE);
}
else{
int asd=rand()%3;
cout<<"白色闪光!";
if(!asd){
cout<<"经验书*1"<<endl; Exp++;
}else{
cout<<"信用点*100"<<endl;money+=100;
}
}
system("pause");
}
goto sdd;
}
else if(rew=="w"){
if(nowsd>1)nowsd--;goto sdd;
}
else if(rew=="s"){
if(nowsd<3)nowsd++;goto sdd;
}
else return;
}
}
void fight(int te[],die de[],int k[],int times,int xing,int cjj,int nowm,int nowd){
bool flag=0,fsd=0;
if(times==1)for(int i=1;i<=4;i++)ks[i]=0;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0)flag=1;
}
if(!flag){
win:
win=1;
system("cls");
say("你赢了!",40);
Sleep(3000);
return;
}
flag=0;
for(int i=1;i<=4;i++){
if(had[te[i]].hp-ks[i]>0&&te[i]!=0)flag=1;
}
if(!flag){
lose:
win=0;
system("cls");
say("你输了!",40);
Sleep(3000);
return;
}
system("cls");
tis=times;
if(times==1){
say("战斗开始!第1回合!",60);
for(int i=1;i<=4;i++){
dun[i]=ks[i]=0;
ns=0;
nl[i]=50;
lian[i]=0;
ceng[i]=0;
zengr[i]=zengf[i]=0;
sf[i]=0;havez[i]=havezd[i]=0;bntcd[i]=bntdcd[i]=0;
}
guanghui=mizong=0;chus=0;bisd=bidg=0;lin=0;tsd=0;shine=0;ling=0;hdh=0;
for(int i=1;i<=7;i++)dugou[i]=0;
int we,kin;
for(int i=1;i<=4;i++){
if(te[i]==4){
kin=1;
break;
}
}
if(kin==1){
for(int i=1;i<=4;i++){
if(te[i]!=0){
zengr[i]+=20;
zengf[i]+=20;
}
}
}
if(pan(9)&&had[9].level>=20){
nl[getnum(9)]+=50;
}
}
else {say("第",60);cout<<times;say("回合!",60);}
cout<<endl;
if(pan(7)&&had[7].level>=20){
if(shisuo[nowd]==0)shisuo[nowd]=1;
}
if(pan(11)){
for(int i=1;i<=4;i++)nl[i]+=5;
for(int i=1;i<=4;i++){
if(bntcd[i]==0){
if(havez[i]){
zengr[i]-=30;
havez[i]=0;
}
}
if(bntcd[i]>0)bntcd[i]--;
}
for(int i=1;i<=4;i++){
if(bntdcd[i]==0){
if(havezd[i]){
zengr[i]-=20;
havezd[i]=0;
}
}
if(bntdcd[i]>0)bntdcd[i]--;
}
}
if(mizong){
for(int i=1;i<=4;i++){
if(te[i]==9)nl[i]+=20;
}
}
bool tj=0;
int fghs;
for(int i=1;i<=4;i++){
if(te[i]==6){
tj=1;
fghs=i;
}
}
if(tj){
if(had[6].level>=20&&had[6].hp-ks[getnum(6)]>0){
cout<<"[武灵之意]"<<endl;
ks[fghs]=max(0,ks[fghs]-had[6].range/2);
cout<<'+'<<had[6].range/2<<endl;
Sleep(2000);
}
}
if(pan(12)&&had[12].level>=20&&lin>0&&had[12].hp-k[getnum(12)]>0){
if(bidg){
for(int i=1;i<=4;i++)zengr[i]-=20;
bidg=0;
}
if(bisd){
for(int i=1;i<=4;i++)zengf[i]-=20;
bisd=0;
}
if(times%lin==0){
cout<<"[起鹤玉涟]"<<endl;
Sleep(1000);
cout<<"[全体伤害提高]"<<endl;
for(int i=1;i<=4;i++)zengr[i]+=20;
bidg=1;
Sleep(1000);
xing++;
}
if(lin%times==0){
cout<<"[起鹤玉涟]"<<endl;
Sleep(1000);
cout<<"[全体防御提高]"<<endl;
for(int i=1;i<=4;i++)zengf[i]+=20;
bisd=1;
Sleep(1000);
cjj++;
}
}
if(guanghui>0){
guanghui--;
say("[光辉剑-夺魂]",80);cout<<endl;
int pe;
for(int i=1;i<=4;i++){
if(te[i]==10)pe=i;
}
de[nowd].hp-=max((had[10].range*25/100)*(100+had[10].ara)/100*(100+zengr[pe])/100-de[nowd].fs,1);
cout<<'-'<<max(had[10].range*25/100*(100+had[10].ara)/100*(100+zengr[pe])/100-de[nowd].fs,1)<<endl;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
cjj++;
Sleep(2000);
}
if(pan(12)&&lin>0&&had[12].level>=40&×%4==0&&had[12].hp-k[getnum(12)]>0){
cout<<"[月翎鸿阳]"<<endl;
Sleep(1000);
for(int i=1;i<=lin;i++){
de[nowd].hp-=max(83+had[12].range*52/100*(100+had[12].ara)/100*(100+zengr[getnum(12)])/100-de[nowd].fs,1);
cout<<'-'<<max(83+had[12].range*52/100*(100+had[12].ara)/100*(100+zengr[getnum(12)])/100-de[nowd].fs,1)<<endl;
if(lian[getnum(12)]==1)lian[getnum(12)]++;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
}
Sleep(2000);
lin=0;
}
if(bds){
int fg;
for(int i=1;i<=4;i++){
if(te[i]==1)fg=i;
}
cout<<"[前行意志]"<<endl;
Sleep(1000);
say("本回合造成伤害增加!",50);cout<<endl;
zengr[fg]+=20;
bds=0;
hasdl=1;
}
else{
if(hasdl){
int fg;
for(int i=1;i<=4;i++){
if(te[i]==1)fg=i;
}
zengr[fg]-=20;
hasdl=0;
}
}
bool f=1;
int h=1;
if(had[nowm].fast>de[nowd].fast){
kkk:
system("cls");
if(f)cout<<"你先行动!"<<endl;
else{
cout<<"你的行动!"<<endl;
f=1;
h=0;
}
flag=0;
for(int i=1;i<=4;i++){
if(had[te[i]].hp-ks[i]>0&&te[i]!=0)flag=1;
}
if(!flag)goto lose;
Sleep(1000);
for(int i=1;i<=4;i++){
if(te[i]!=0)nl[i]+=10;
}
if(had[13].level>=20&&pan(13)&&had[13].hp-ks[getnum(13)]>0&&tsd&&!shine)shine=1;
if(pan(13)&&had[13].hp-ks[getnum(13)]>0&&tsd&&shine>0){
cout<<"[光明侍从]行动!"<<endl;
Sleep(1000);
if(had[13].level>=40)zengr[getnum(13)]+=30;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(had[13].range*28*shine/100)*(100+had[13].ara)/100*(100+zengr[getnum(13)])/100-de[i].fs);
cout<<'-'<<max(1,(had[13].range*28*shine/100)*(100+had[13].ara)/100*(100+zengr[getnum(13)])/100-de[i].fs)<<endl;
if(lian[getnum(13)]==1)ceng[getnum(13)]++;
nl[nowm]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
if(had[13].level>=40)zengr[getnum(13)]-=30;
Sleep(1000);
shine=0;
}
re:
if(ling&&pan(14)&&!hdh&&had[14].level>=40){
hdh=1;
zengr[getnum(14)]+=30;
}
else if(!ling&&pan(14)&&hdh&&had[14].level>=40){
hdh=0;
zengr[getnum(14)]-=30;
}
if(te[nowm]==9){
if(mizong==1){
mizong=0;
system("cls");
say("绮夜 解除[迷踪]状态!",80);
Sleep(1000);
system("cls");
zengr[nowm]-=30;
}
}
system("cls");
say("当前场上角色:",40);say(role_name[te[nowm]],40);cout<<endl;
say("剩余血量:",40);cout<<had[te[nowm]].hp-k[nowm];
if(dun[nowm]!=0)cout<<'+'<<dun[nowm];
cout<<endl;
cout<<"剩余程序:"<<cjj<<" "<<"剩余行动点:"<<xing<<endl;
cout<<"要执行什么操作?"<<endl;
cout<<"[1]普通攻击"<<endl;
cout<<"[2]释放战技:"<<ji[te[nowm]]<<endl;
cout<<"[3]释放爆发"<<endl;
cout<<"[4]切换角色"<<endl;
cout<<"[5]结束回合"<<endl;
while(1){
kj=_getch();
if(kj=="1"||kj=="2"||kj=="3"||kj=="4"||kj=="5")break;
}
if(kj=="1"){
system("cls");
if(xing==0){
cout<<"行动点不足!"<<endl;
Sleep(2000);
goto re;
}
if(pan(13)&&had[13].hp-k[getnum(13)]>0&&tsd)shine=min(10,shine+1);
say(role_name[te[nowm]],40);say(" 使用了普攻!",40);cout<<endl;if(te[nowm]==12)lin++;
de[nowd].hp-=max(had[te[nowm]].range*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1);
cout<<'-'<<max(had[te[nowm]].range*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1)<<endl;
if(te[nowm]==2&&had[2].level>=20){
de[nowd].hp-=max(had[te[nowm]].range/5*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100,1);
cout<<'-'<<max(had[te[nowm]].range/5*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100,1)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
}
if(te[nowm]==10&&had[10].level>=20){
int stl=1+rand()%10;
if(stl<=8){
cout<<"[月辉剑-连击]"<<endl;
Sleep(1000);
de[nowd].hp-=max(had[te[nowm]].range*120/100*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1);
cout<<'-'<<max(had[te[nowm]].range*120/100*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1)<<endl;
nl[nowm]+=10;
if(lian[nowm]==1)ceng[nowm]++;
}
cjj++;
}
if(te[nowm]==14&&!ling){
int k=rand()%5+1;
if(k==1){
ling=1;
if(had[14].level>=20){
de[nowd].hp-=max(had[te[nowm]].range*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1);
cout<<'-'<<max(had[te[nowm]].range*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1)<<endl;
}
}
}
nl[nowm]+=10;
if(lian[nowm]==1)ceng[nowm]++;
if(te[nowm]==8){
int r=1+rand()%20;
if(r==1){
cout<<"[最终大奖]"<<endl;
Sleep(2000);
de[nowd].hp-=max((had[te[nowm]].range*450/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1);
cout<<'-'<<max(had[te[nowm]].range*450/100*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1)<<endl;
}
}
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
fsd=0;int r;
for(int i=1;i<=4;i++)if(te[i]==3&&had[te[i]].hp-k[i]>0){r=i;fsd=1;break;}
if(fsd){
int k=rand()%2;
if(k==1){
if(pan(13)&&had[13].hp-ks[getnum(13)]>0&&tsd)shine=min(10,shine+1);;
cout<<"[学海无涯]"<<endl;
Sleep(1000);
nowm=r;
de[nowd].hp-=max(1,(50+had[te[nowm]].range*160/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(50+had[te[nowm]].range*160/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(had[3].level>=40){
de[nowd].hp-=max(1,(50+had[te[nowm]].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(50+had[te[nowm]].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
}
if(lian[nowm]==1)ceng[nowm]++;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
}
}
for(int i=1;i<=4;i++){
if(lian[i]==1){
while(ceng[i]>=4){
ceng[i]-=3;
cout<<"[联动]"<<endl;
Sleep(1000);
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(60+had[4].range*220/100)*(100+had[4].ara)/100*(100+zengr[nowm])/100-de[i].fs);
cout<<'-'<<max(1,(42+had[4].range*220/100)*(100+had[4].ara)/100*(100+zengr[nowm])/100-de[i].fs)<<endl;
for(int i=1;i<=4;i++){
if(te[i]==4){
nl[i]+=10;
break;
}
}
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){
if(te[i]==4){
nl[i]+=10;
break;
}
}
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
}
}
say("敌方剩余血量:",40);cout<<max(0,de[nowd].hp)<<endl;
system("pause");
xing--;
cjj++;
goto re;
}
else if(kj=="2"){
system("cls");
if(xing==0&&te[nowm]!=8){
cout<<"行动点不足!"<<endl;
Sleep(2000);
goto re;
}
if(cjj!=0){
if(pan(13)&&had[13].hp-k[getnum(13)]>0&&tsd)shine=min(10,shine+1);;
int shang,bi;
say(role_name[te[nowm]],40);say(" 使用了战技:",40);say(ji[te[nowm]],40);say("!",40);cout<<endl;
nl[nowm]+=10;
if(te[nowm]==1){
shang=1;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(42+had[1].range*80/100)*(100+had[te[nowm]].ara*(100+zengr[nowm])/100)/100-de[i].fs);
cout<<'-'<<max(1,(42+had[1].range*80/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[i].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(had[1].level>=20)nl[nowm]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
else if(te[nowm]==2){
shang=1;
de[nowd].hp-=max(1,(40+had[2].range*240/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(40+had[2].range*240/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(had[2].level>=40&&!sf[nowd]){
cout<<"[时生玉质]"<<endl;
cout<<"敌方防御降低!"<<endl;
Sleep(2000);
de[nowd].fs=de[nowd].fs*80/100;
sf[nowd]=1;
}
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
else if(te[nowm]==3){
shang=1;
if(had[3].level>=20)bi=1;
de[nowd].hp-=max(1,(56+had[3].range*110/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(56+had[3].range*110/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
else if(te[nowm]==4){
shang=0;
if(!ns){
int ais=0,d;
cout<<"请选择'联动对象':"<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=4&&te[i]!=0&&had[te[i]].hp-k[i]>0){
cout<<"[按"<<i<<"+Enter]"<<role_name[te[i]]<<endl;
}
}
while(1){
cin>>d;
if(te[d]!=0&&te[d]!=4&&had[te[d]].hp-k[d]>0)break;
}
say(role_name[te[d]],40);say(" 成为'联动对象'!",40);
Sleep(1000);
nowm=d;
lian[d]=1;
if(had[4].level>=20)zengr[d]+=20;
ns=1;
}
else{
say("不可使用!",50);cout<<endl;
Sleep(1000);
goto re;
}
}
else if(te[nowm]==5){
shang=0;
int d;
cout<<"请选择使用对象:"<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=5&&te[i]!=0){
cout<<"[按"<<i<<"+Enter]"<<role_name[te[i]]<<endl;
}
}
while(1){
cin>>d;
if(te[d]!=0&&te[d]!=5)break;
}
say(role_name[te[d]],40);say(" 恢复血量。",40);cout<<endl;
nowm=d;
ks[d]=max(0,ks[d]-had[5].hp*50/100);
cout<<'+'<<had[5].hp*50/100<<endl;
if(had[5].level>=20){
cout<<"[五谷丰登]"<<endl;
ks[nowm]=max(0,ks[nowm]-had[5].hp*20/100);
cout<<'+'<<had[5].hp*20/100<<endl;
}
xing+=2;
Sleep(1000);
}
else if(te[nowm]==6){
shang=1;
for(int i=1;i<=4;i++){
dun[i]+=had[6].hp*50/100;
}
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(35+had[6].range*110/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[i].fs);
cout<<'-'<<max(1,(35+had[6].range*110/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[i].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
else if(te[nowm]==7){
shang=1;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
for(int i=1;i<=cjj;i++){
if(shisuo[i])nl[nowm]+=10;
if(shisuo[i]&&had[7].level>=40&&de[i].fs<had[7].range*75/100){
de[i].fs=0;
}
de[i].hp-=max(1,(34+had[7].range*80/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[i].fs);
cout<<'-'<<max(1,(34+had[7].range*80/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[i].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
shisuo[i]++;
}
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
cjj=1;
}
else if(te[nowm]==8){
shang=0;
say("投掷节点!",80);
Sleep(2000);
cout<<endl;
for(int i=1;i<=7;i++){
if(dugou[i]!=1)dugou[i]=rand()%2;
}
for(int i=1;i<=7;i++){
if(dugou[i]==1){
Set(RED);
cout<<"红 ";
}
else{
Set(WHITE);
cout<<"白 ";
}
}
cout<<endl;
if(had[8].level>=20){
int der=1+rand()%5;
if(der==1){
cout<<"[新定义算法]"<<endl;
shang=1;
Sleep(1000);
if(lian[nowm]==1)ceng[nowm]++;
de[nowd].hp-=max(had[te[nowm]].range*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1);
cout<<'-'<<max(had[te[nowm]].range*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs,1)<<endl;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
}
}
if(had[8].level>=40){
for(int i=1;i<=4;i++)nl[i]+=10;
}
bool shajin=1;
for(int i=1;i<=7;i++){
if(dugou[i]==0)shajin=0;
}
Set(WHITE);
xing++;
if(shajin){
cout<<endl<<"爆发:砂金算法 已解锁!";
nl[nowm]=1000000000;
for(int i=1;i<=7;i++)dugou[i]=0;
}
}
else if(te[nowm]==9){
shang=1;
de[nowd].hp-=max(1,(50+had[9].range*270/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(50+had[9].range*270/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
say("绮夜 进入[迷踪]状态!",80);cout<<endl;
mizong=1;
zengr[nowm]+=30;
for(int i=1;i<=4;i++){if(te[i]!=0&&te[i]!=9&&had[te[i]].hp-k[i]>0){nowm=i;say(role_name[te[i]],40);say(" 上场!",40);cout<<endl;break;}}
}
else if(te[nowm]==10){
shang=1;
de[nowd].hp-=max(1,(30+had[10].range*(200+75*cjj)/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(30+had[10].range*(200+75*cjj)/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
cjj=1;
}
else if(te[nowm]==11){
shang=0;
if(had[11].level>=20){
int r=rand()%2;
if(r)cjj++;
}
int d;
cout<<"请选择使用对象:"<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=11&&te[i]!=0&&had[te[i]].hp-k[i]>0){
cout<<"[按"<<i<<"+Enter]"<<role_name[te[i]]<<endl;
}
}
while(1){
cin>>d;
if(te[d]!=0&&te[d]!=11&&had[te[d]].hp-k[d]>0)break;
}
if(!bntcd[d]&&!havez[d]){
bntcd[d]=3;
zengr[d]+=30;
havez[d]=1;
}
nl[d]+=20;
nowm=d;
cout<<role_name[te[d]]<<" 上场!"<<endl;
Sleep(1000);
}
else if(te[nowm]==12){
shang=1;
lin+=2;
de[nowd].hp-=max(1,(42+had[12].range*250/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(42+had[12].range*250/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
else if(te[nowm]==13){
shang=1;
if(!tsd)tsd=1;
else shine=min(10,shine+3);
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(40+had[13].range*70/100)*(100+had[te[nowm]].ara*(100+zengr[nowm])/100)/100-de[i].fs);
cout<<'-'<<max(1,(40+had[13].range*70/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[i].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
else if(te[nowm]==14){
shang=1;
ling=1;
ks[nowm]+=(had[14].hp-ks[nowm])/10;
de[nowd].hp-=max(1,(30+had[14].range*290/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(30+had[14].range*290/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
nl[nowm]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
fsd=0;int r;
for(int i=1;i<=4;i++)if(te[i]==3&&had[te[i]].hp-k[i]>0){r=i;fsd=1;break;}
if(fsd&&shang){
int k=rand()%2;
if(bi)k=1;
if(k==1){
if(pan(13)&&had[13].hp-ks[getnum(13)]>0&&tsd)shine=min(10,shine+1);;
cout<<"[学海无涯]"<<endl;
Sleep(1000);
nowm=r;
de[nowd].hp-=max(1,(50+had[te[nowm]].range*160/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(50+had[te[nowm]].range*160/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(had[3].level>=40){
de[nowd].hp-=max(1,(50+had[te[nowm]].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(50+had[te[nowm]].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
}
if(lian[nowm]==1)ceng[nowm]++;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
}
}
for(int i=1;i<=4;i++){
if(lian[i]==1){
while(ceng[i]>=4){
ceng[i]-=3;
cout<<"[联动]"<<endl;
Sleep(1000);
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(60+had[4].range*220/100)*(100+had[4].ara)/100*(100+zengr[nowm])/100-de[i].fs);
cout<<'-'<<max(1,(42+had[4].range*220/100)*(100+had[4].ara)/100*(100+zengr[nowm])/100-de[i].fs)<<endl;
for(int i=1;i<=4;i++){
if(te[i]==4){
nl[i]+=10;
break;
}
}
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){
if(te[i]==4){
nl[i]+=10;
break;
}
}
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
}
}
cjj--;
xing--;
Sleep(1000);
goto re;
}
else{
say("程序不足!",40);
Sleep(1000);
goto re;
}
}
else if(kj=="3"){
system("cls");
cout<<"可使用爆发角色:"<<endl;
for(int i=1;i<=4;i++){
if(nl[i]>=nx[te[i]]&&te[i]!=0&&had[i].hp-ks[i]>0){
cout<<role_name[te[i]]<<" "<<"可释放爆发:"<<bao[te[i]]<<" [按"<<i<<"+Enter释放]"<<endl;
}
}
cout<<"输入0+Enter返回" <<endl;
int sds;
cin>>sds;
if(sds==0){
goto re;
}
if(xing==0&&te[sds]!=3){
cout<<"行动点不足!"<<endl;
Sleep(2000);
goto re;
}
else if(nl[sds]<nx[te[sds]]){
cout<<"能量不足!"<<endl;
Sleep(2000);
goto re;
}
else{
if(pan(13)&&had[13].hp-k[getnum(13)]>0&&tsd&&sds==nowm)shine=min(10,shine+1);;
int shang,bi=0;
nl[sds]-=nx[te[sds]];
say(role_name[te[sds]],40);say(" 使用爆发! ",40);say(bao[te[sds]],40);cout<<endl;
if(te[sds]==1){
shang=1;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(78+had[1].range*280/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs);
cout<<'-'<<max(1,(78+had[1].range*280/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
if(i==nowd)for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
bds=1;
}
else if(te[sds]==2){
shang=1;
de[nowd].hp-=max(1,(78+had[2].range*340/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(78+had[2].range*340/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
xing++;
}
else if(te[sds]==3){
shang=1;
if(had[3].level>=20)bi=1;
de[nowd].hp-=max(1,(90+had[3].range*200/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(90+had[3].range*200/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
xing+=2;
}
else if(te[sds]==4){
shang=1;
de[nowd].hp-=max(1,(89+had[4].range*150/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(89+had[4].range*150/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
nl[sds]+=10;
if(had[4].level>=40){
for(int i=1;i<=4;i++)nl[i]+=30;
}
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
cjj+=2;
xing++;
}
else if(te[sds]==5){
shang=0;
say("全体恢复血量!",80);cout<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=0&&had[te[i]].hp-ks[i]>0){
ks[i]=max(0,ks[i]-had[5].hp*50/100);
cout<<'+'<<had[5].hp*50/100<<endl;
}
}
if(had[5].level>=40){
for(int i=1;i<=4;i++)nl[i]+=20;
}
xing++;
cjj+=2;
}
else if(te[sds]==6){
shang=1;
for(int i=1;i<=4;i++){
if(te[i]!=0&&had[te[i]].hp-ks[i]>0)nl[i]+=30;
}
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(50+had[6].range*200/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs);
cout<<'-'<<max(1,(78+had[6].range*200/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
if(i==nowd)for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
else if(te[sds]==7){
shang=1;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(60+had[7].range*210/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs);
cout<<'-'<<max(1,(60+had[7].range*210/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
for(int i=1;i<=shisuo[i];i++){
de[i].hp-=max(1,(had[7].range*30/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs);
cout<<'-'<<max(1,(had[7].range*30/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
}
shisuo[i]=0;
nl[sds]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
if(i==nowd)for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
else if(te[sds]==8){
shang=1;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(80+had[8].range*350/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs);
cout<<'-'<<max(1,(80+had[8].range*350/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[i].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
if(i==nowd)for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
int r=1+rand()%5;
if(r==1){
cout<<"[最终大奖]"<<endl;
Sleep(2000);
de[nowd].hp-=max(had[te[sds]].range*450/100*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs,1);
cout<<'-'<<max(had[te[sds]].range*450/100*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs,1)<<endl;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
else if(te[sds]==9){
shang=1;
int chu=1;
start:
if(de[nowd].hp>0){
if(te[nowm]==9){
de[nowd].hp-=max(1,((50+had[9].range*350/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)/chu);
cout<<'-'<<max(1,((50+had[9].range*350/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)/chu)<<endl;
}
else{
de[nowd].hp-=max(1,((80+had[9].range*520/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)/chu);
cout<<'-'<<max(1,((80+had[9].range*520/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)/chu)<<endl;
xing++;
}
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
if(had[9].level>=40)nl[sds]+=20;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
chu=2;
goto start;
}
}
}
else if(te[sds]==10){
shang=1;
de[nowd].hp-=max(1,(60+had[10].range*380/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(60+had[10].range*380/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
guanghui+=3;
}
else if(te[sds]==11){
shang=0;
cout<<"[全体回复能量]"<<endl;
cout<<"[全体伤害提高]"<<endl;
for(int i=1;i<=4;i++){
nl[i]+=10;
if(!havezd[i]){
bntdcd[i]=3;
zengr[i]+=20;
havezd[i]=1;
}
}
xing++;if(had[11].level>=40)xing++;
}
else if(te[sds]==12){
if(!lin){
shang=0;
say("全体恢复血量!",80);cout<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=0&&had[te[i]].hp-ks[i]>0){
ks[i]=max(0,ks[i]-(31+had[12].range*110/100));
cout<<'+'<<31+had[12].range*110/100<<endl;
}
}
}else if(lin<=3){
shang=1;
de[nowd].hp-=max(1,(32+had[12].range*150/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(32+had[12].range*150/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}else{
shang=1;
lin=0;
de[nowd].hp-=max(1,(67+had[12].range*405/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(67+had[12].range*405/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
else if(te[sds]==13){
shang=1;
if(tsd)shine=min(10,shine+3);
de[nowd].hp-=max(1,(90+had[13].range*320/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(90+had[13].range*320/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
if(tsd){
cout<<"[光明侍从]行动!"<<endl;
Sleep(1000);
if(had[13].level>=40)zengr[getnum(13)]+=30;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(had[13].range*28*shine/100)*(100+had[13].ara)/100*(100+zengr[getnum(13)])/100-de[i].fs);
cout<<'-'<<max(1,(had[13].range*28*shine/100)*(100+had[13].ara)/100*(100+zengr[getnum(13)])/100-de[i].fs)<<endl;
if(lian[getnum(13)]==1)ceng[getnum(13)]++;
nl[nowm]+=10;
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
nl[nowm]+=30;
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
if(had[13].level>=40)zengr[getnum(13)]-=30;
Sleep(1000);
shine=0;
}
}
else if(te[sds]==14){
shang=1;
ling=0;
zengr[sds]+=had[14].hp*100/ks[sds];
de[nowd].hp-=max(1,(90+had[14].range*410/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs);
cout<<'-'<<max(1,(90+had[14].range*410/100)*(100+had[te[sds]].ara)/100*(100+zengr[sds])/100-de[nowd].fs)<<endl;
zengr[sds]-=had[14].hp*100/ks[sds];
if(lian[sds]==1)ceng[sds]++;
nl[sds]+=10;
if(de[nowd].hp<=0){
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
nl[sds]+=30;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){nowd=i;say(de[i].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
fsd=0;int r;
for(int i=1;i<=4;i++)if(te[i]==3&&had[te[i]].hp-k[i]>0){r=i;fsd=1;break;}
if(fsd&&shang){
int k=rand()%2;
if(bi)k=1;
if(k==1){
cout<<"[学海无涯]"<<endl;
Sleep(1000);
nowm=r;
de[nowd].hp-=max(1,(50+had[te[nowm]].range*160/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(50+had[te[nowm]].range*160/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(had[3].level>=40){
de[nowd].hp-=max(1,(50+had[te[nowm]].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs);
cout<<'-'<<max(1,(50+had[te[nowm]].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs)<<endl;
if(lian[nowm]==1)ceng[nowm]++;
}
if(lian[nowm]==1)ceng[nowm]++;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
}
}
for(int i=1;i<=4;i++){
if(lian[i]==1){
while(ceng[i]>=4){
ceng[i]-=3;
cout<<"[联动]"<<endl;
Sleep(1000);
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0){
de[i].hp-=max(1,(60+had[4].range*220/100)*(100+had[4].ara)/100*(100+zengr[nowm])/100-de[i].fs);
cout<<'-'<<max(1,(42+had[4].range*220/100)*(100+had[4].ara)/100*(100+zengr[nowm])/100-de[i].fs)<<endl;
for(int i=1;i<=4;i++){
if(te[i]==4){
nl[i]+=10;
break;
}
}
if(de[i].hp<=0){
say(de[i].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){
if(te[i]==4){
nl[i]+=10;
break;
}
}
for(int j=1;j<=4;j++){if(de[j].hp>0&&de[j].level!=0){nowd=j;say(de[j].name,40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
}
}
say("敌方剩余血量:",40);cout<<max(0,de[nowd].hp)<<endl;
system("pause");
xing--;
goto re;
}
}
else if(kj=="4"){
system("cls");
if(xing>0||lin>0){
say("请选择要切换上场的角色:",40);
cout<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=0&&had[te[i]].hp-k[i]>0){
cout<<role_name[te[i]]<<" "<<"剩余血量:"<<had[te[i]].hp-k[i]<<" "<<"(按"<<i<<"切换) "<<endl;
}
}
while(1){
kj=_getch();
bool o=0;
for(int i=1;i<=4;i++)if(kj==to_strings(i)&&had[te[i]].hp-k[i]>0){cout<<endl<<role_name[te[i]]<<" "<<"已切换上阵!";xing--;nowm=i;o=1;break;}
if(o)break;
}
if(lin>0){
lin--;xing++;
}
Sleep(2000);
goto re;
}
else{
cout<<"行动点不足!"<<endl;
Sleep(2000);
goto re;
}
}
else if(kj=="5"){
system("cls");
say("回合结束!",60);
cout<<endl;
for(int i=1;i<=4;i++){
if(te[i]==5&&had[te[i]].hp-ks[i]>0){
cout<<"[感觉不错]"<<endl;
Sleep(500);
ks[nowm]=max(0,ks[nowm]-had[5].hp*20/100);
cout<<'+'<<had[5].hp*20/100<<endl;
}
}
Sleep(2000);
system("cls");
flag=0;
for(int i=1;i<=4;i++){
if(de[i].hp>0&&de[i].level!=0)flag=1;
}
if(!flag)goto win;
else if(h==0){
h=1;
goto end;
}
say("敌方行动!",40);
aka:
Sleep(1000);
system("cls");
say(de[nowd].name,40);say(" 发动进攻!",40);
cout<<endl;
if(de[nowd].name=="时序天顶之星"||de[nowd].name=="时序天顶之星-改"){
int tim=2;
if(de[nowd].name=="时序天顶之星-改")tim=3;
bool shang=0;
while(tim--){
int sdf=rand()%2;
if(de[nowd].name=="时序天顶之星-改")sdf=rand()%4;
if(sdf==1){
shang=1;
cout<<"[苍穹-散]"<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=0&&had[te[i]].hp-ks[i]>0){
if(te[i]==10&&xing>0){
xing--;
cout<<"[日辉剑-幻象]";cout<<endl;
Sleep(2000);
continue;
}
dun[i]-=max(1,de[nowd].range*(de[nowd].ara+100)/100-had[te[i]].fs*(had[te[i]].afs+100)/100*(100+zengf[i])/100);
if(dun[i]<0){
ks[i]-=dun[i];
dun[i]=0;
}
nl[i]+=10;
cout<<'-'<<max(1,de[nowd].range*(de[nowd].ara+100)/100-had[te[i]].fs*(had[te[i]].afs+100)/100*(100+zengf[i])/100)<<endl;
if(had[te[i]].hp-k[i]<=0){
say(role_name[te[i]],40);say(" 倒下!",40);cout<<endl;
if(de[nowd].name=="时序天顶之星-改"){
de[nowd].ara+=15;
cout<<"[时序天顶之星-改 获得伤害提高效果]"<<endl;
}
if(te[i]==6&&had[6].level>=40&&!chus){
cout<<"[多元可能]"<<endl;
Sleep(2000);
ks[i]=0;
nl[i]+=50;
continue;
}
if(i==nowm)for(int l=1;l<=4;l++){if(te[l]!=0&&had[te[l]].hp-k[l]>0){nowm=l;say(role_name[te[l]],40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
}
else if(sdf==0){
shang=1;
cout<<"[苍穹-聚]"<<endl;
Sleep(1000);
if(te[nowm]==10&&xing>0){
xing--;
cout<<"[日辉剑-幻象]";cout<<endl;
Sleep(2000);
continue;
}
dun[nowm]-=max(1,de[nowd].range*3*(de[nowd].ara+100)/100-had[te[nowm]].fs*(had[te[nowm]].afs+100)/100*(100+zengf[nowm])/100);
if(dun[nowm]<0){
ks[nowm]-=dun[nowm];
dun[nowm]=0;
}
cout<<'-'<<max(1,de[nowd].range*3*(de[nowd].ara+100)/100-had[te[nowm]].fs*(had[te[nowm]].afs+100)/100*(100+zengf[nowm])/100)<<endl;
nl[nowm]+=10;
if(had[te[nowm]].hp-k[nowm]<=0){
say(role_name[te[nowm]],40);say(" 倒下!",40);cout<<endl;
if(te[nowm]==6&&had[6].level>=40&&!chus){
cout<<"[多元可能]"<<endl;
Sleep(2000);
ks[nowm]=0;
nl[nowm]+=50;
continue;
}
for(int i=1;i<=4;i++){if(te[i]!=0&&had[te[i]].hp-k[i]>0){nowm=i;say(role_name[te[i]],40);say(" 上场!",40);cout<<endl;break;}}
}
}
else if(de[nowd].name=="时序天顶之星-改"&&sdf==2){
shang=0;
cout<<"[苍穹之羽-砺锋]"<<endl;
Sleep(1000);
de[nowd].ara+=10;
cout<<"[时序天顶之星-改 获得伤害提高效果]"<<endl;
}
else if(de[nowd].name=="时序天顶之星-改"&&sdf==3){
shang=0;
cout<<"[苍穹之羽-护心]"<<endl;
Sleep(1000);
de[nowd].fs+=de[nowd].fs/10;
cout<<"[时序天顶之星-改 的防御力获得提高]"<<endl;
}
Sleep(1000);
}
if(te[nowm]==10&&had[10].level>=40&&shang){
int ry=rand()%2;
if(ry){
cout<<endl;
cout<<"[轮回剑-反伤]"<<endl;
Sleep(1000);
de[nowd].hp-=max(1,((had[10].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs));
cout<<'-'<<max(1,((had[10].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs))<<endl;
nl[nowm]+=10;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
Sleep(1000);
ks[nowm]=max(0,ks[nowm]-had[10].hp*10/100);
cout<<'+'<<had[10].hp*10/100<<endl;
}
}
Sleep(2000);
goto end;
}
else if(de[nowd].name=="算法-基础图论"||de[nowd].name=="算法-进阶图论"){
de[nowd].hp=max(1,de[nowd].hp/2);
if(de[nowd].name=="算法-进阶图论")de[nowd].hp+=100;
cout<<"[图论-自我引爆]"<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=0&&had[te[i]].hp-ks[i]>0){
if(te[i]==10&&xing>0){
xing--;
cout<<"[日辉剑-幻象]";cout<<endl;
Sleep(2000);
continue;
}
dun[i]-=max(1,de[nowd].range*3*(de[nowd].ara+100)/100-had[te[i]].fs*(had[te[i]].afs+100)/100*(100+zengf[i])/100);
if(dun[i]<0){
ks[i]-=dun[i];
dun[i]=0;
}
nl[i]+=10;
cout<<'-'<<max(1,de[nowd].range*3*(de[nowd].ara+100)/100-had[te[i]].fs*(had[te[i]].afs+100)/100*(100+zengf[i])/100)<<endl;
if(had[te[i]].hp-k[i]<=0){
say(role_name[te[i]],40);say(" 倒下!",40);cout<<endl;
if(te[i]==6&&had[6].level>=40&&!chus){
cout<<"[多元可能]"<<endl;
Sleep(2000);
ks[i]=0;
nl[i]+=50;
continue;
}
if(i==nowm)for(int l=1;l<=4;l++){if(te[l]!=0&&had[te[l]].hp-k[l]>0){nowm=l;say(role_name[te[l]],40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
goto end;
}
else if(de[nowd].name=="算法-数据流"){
cout<<"[集合数字洪流]"<<endl;
for(int i=1;i<=4;i++){
if(te[i]!=0&&had[te[i]].hp-ks[i]>0){
if(te[i]==10&&xing>0){
xing--;
cout<<"[日辉剑-幻象]";cout<<endl;
Sleep(2000);
continue;
}
dun[i]-=max(1,de[nowd].range/2*(de[nowd].ara+100)/100-had[te[i]].fs*(had[te[i]].afs+100)/100*(100+zengf[i])/100);
if(dun[i]<0){
ks[i]-=dun[i];
dun[i]=0;
}
nl[i]-=20;
cout<<'-'<<max(1,de[nowd].range/2*(de[nowd].ara+100)/100-had[te[i]].fs*(had[te[i]].afs+100)/100*(100+zengf[i])/100)<<endl;
if(had[te[i]].hp-k[i]<=0){
say(role_name[te[i]],40);say(" 倒下!",40);cout<<endl;
if(te[i]==6&&had[6].level>=40&&!chus){
cout<<"[多元可能]"<<endl;
Sleep(2000);
ks[i]=0;
nl[i]+=50;
continue;
}
if(i==nowm)for(int l=1;l<=4;l++){if(te[l]!=0&&had[te[l]].hp-k[l]>0){nowm=l;say(role_name[te[l]],40);say(" 上场!",40);cout<<endl;break;}}
}
}
}
cjj=0;
cout<<"[我方全体减少能量,程序归零]"<<endl;
Sleep(1000);
goto end;
}
else{
if(te[nowm]==10&&xing>0){
xing--;
cout<<"[日辉剑-幻象]";cout<<endl;
Sleep(2000);
goto end;
}
dun[nowm]-=max(1,de[nowd].range*(de[nowd].ara+100)/100-had[te[nowm]].fs*(had[te[nowm]].afs+100)/100*(100+zengf[nowm])/100);
if(dun[nowm]<0){
ks[nowm]-=dun[nowm];
dun[nowm]=0;
}
cout<<'-'<<max(1,de[nowd].range*(de[nowd].ara+100)/100-had[te[nowm]].fs*(had[te[nowm]].afs+100)/100*(100+zengf[nowm])/100)<<endl;
nl[nowm]+=10;
if(had[te[nowm]].hp-k[nowm]<=0){
say(role_name[te[nowm]],40);say(" 倒下!",40);cout<<endl;
if(te[nowm]==6&&had[6].level>=40&&!chus){
cout<<"[多元可能]"<<endl;
Sleep(2000);
ks[nowm]=0;
nl[nowm]+=50;
goto end;
}
for(int i=1;i<=4;i++){if(te[i]!=0&&had[te[i]].hp-k[i]>0){nowm=i;say(role_name[te[i]],40);say(" 上场!",40);cout<<endl;break;}}
}
else{
if(te[nowm]==10&&had[10].level>=40){
int ry=rand()%2;
if(ry){
cout<<endl;
cout<<"[轮回剑-反伤]"<<endl;
Sleep(1000);
de[nowd].hp-=max(1,((had[10].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs));
cout<<'-'<<max(1,((had[10].range*150/100)*(100+had[te[nowm]].ara)/100*(100+zengr[nowm])/100-de[nowd].fs))<<endl;
nl[nowm]+=10;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
Sleep(1000);
ks[nowm]=max(0,ks[nowm]-had[10].hp*10/100);
cout<<'+'<<had[10].hp*10/100<<endl;
}
}
}
Sleep(2000);
if(!f)goto kkk;
end:
if(had[1].level>=40){
bool gff=0;
for(int i=1;i<=4;i++){
if(te[i]==1)gff=1;
}
if(gff){
if(de[nowd].hp<=had[1].hp/20){
cout<<"[天启将终]"<<endl;
Sleep(1000);
de[nowd].hp=0;
if(de[nowd].hp<=0){
nl[nowm]+=30;
say(de[nowd].name,40);say(" 倒下!",40);cout<<endl;
for(int i=1;i<=4;i++){if(de[i].level!=0&&de[i].hp>0){say(de[i].name,40);say(" 上场!",40);cout<<endl;nowd=i;break;}}
}
}
}
}
fight(te,de,k,times+1,xing+2,cjj,nowm,nowd);
}
}
}
else{
cout<<"敌方行动!";
Sleep(2000);
f=0;
goto aka;
}
}
void biandui(int p){
int nowk=1;
chas:
system("cls");
cout<<"关卡"<<p<<"-单行"<<endl;
cout<<"目前队伍:"<<endl;
for(int i=1;i<=4;i++){
cout<<"["<<i<<"]";
if(first_team[i]!=0&&first_team[i]!=1)cout<<"Lv"<<had[first_team[i]].level<<" "<<role_name[first_team[i]]<<endl;
else if(first_team[i]!=0)cout<<"Lv"<<had[first_team[i]].level<<" "<<"S "<<name<<" 属性:"<<shu<<endl;
else {
cout<<"无"<<endl;
}
}
string fg;
cout<<"(e清空队伍,ad切换角色,空格上阵角色,q确定)"<<endl;
if(nowk==1)cout<<"Lv"<<had[nowk].level<<" "<<"S "<<name<<" 属性:"<<shu;
else cout<<"Lv"<<had[nowk].level<<" "<<role_name[nowk];
fg=_getch();
if(fg=="e"){
for(int i=1;i<=4;i++)first_team[i]=0;
goto chas;
}
else if(fg=="a"){
for(int i=nowk-1;i>=1;i--){
if(have_role[i]!=0){
nowk=i;
break;
}
}
goto chas;
}
else if(fg=="d"){
for(int i=nowk+1;i<=1500;i++){
if(have_role[i]!=0){
nowk=i;
break;
}
}
goto chas;
}
else if(fg==" "){
bool flag=1;
for(int i=1;i<=4;i++)if(first_team[i]==nowk){flag=0;break;}
if(flag){
for(int i=1;i<=4;i++)if(first_team[i]==0){first_team[i]=nowk;break;}
}
goto chas;
}
else if(fg=="q"){
return;
}
}
void sq_biandui(int p){
int nowk=1,nowdw=1;chass:
system("cls");
cout<<"关卡"<<p<<"-双行"<<endl;cout<<"目前队伍:"<<endl<<endl;
if(nowdw==1)cout<<"#";cout<<"队伍1:"<<endl;
for(int i=1;i<=4;i++){cout<<"["<<i<<"]";if(first_team[i]!=0&&first_team[i]!=1)cout<<"Lv"<<had[first_team[i]].level<<" "<<role_name[first_team[i]]<<endl;else if(first_team[i]!=0)cout<<"Lv"<<had[first_team[i]].level<<" "<<"S "<<name<<" 属性:"<<shu<<endl;else {cout<<"无"<<endl;}}
cout<<endl;
if(nowdw==2)cout<<"#";cout<<"队伍2:"<<endl;
for(int i=1;i<=4;i++){
cout<<"["<<i<<"]";
if(second_team[i]!=0&&second_team[i]!=1)cout<<"Lv"<<had[second_team[i]].level<<" "<<role_name[second_team[i]]<<endl;
else if(second_team[i]!=0)cout<<"Lv"<<had[second_team[i]].level<<" "<<"S "<<name<<" 属性:"<<shu<<endl;
else{
cout<<"无"<<endl;
}
}
string fg;
cout<<"(e清空队伍,ad切换角色,ws切换队伍,空格上阵角色,q确定)"<<endl;
if(nowk==1)cout<<"Lv"<<had[nowk].level<<" "<<"S "<<name<<" 属性:"<<shu;
else cout<<"Lv"<<had[nowk].level<<" "<<role_name[nowk];
fg=getch();
if(fg=="e"){if(nowdw==1){for(int i=1;i<=4;i++)first_team[i]=0;goto chass;}else{for(int i=1;i<=4;i++)second_team[i]=0;goto chass;}}
else if(fg=="a"){for(int i=nowk-1;i>=1;i--){if(have_role[i]!=0){nowk=i;break;}}goto chass;}
else if(fg=="d"){for(int i=nowk+1;i<=1500;i++){if(have_role[i]!=0){nowk=i;break;}}goto chass;}
else if(fg==" "){
if(nowdw==1){
bool flag=1;
for(int i=1;i<=4;i++)if(first_team[i]==nowk||second_team[i]==nowk){flag=0;break;}
if(flag){
for(int i=1;i<=4;i++)if(first_team[i]==0){first_team[i]=nowk;break;}
}
}
else if(nowdw==2){
bool flag=1;
for(int i=1;i<=4;i++)if(second_team[i]==nowk||first_team[i]==nowk){flag=0;break;}
if(flag){
for(int i=1;i<=4;i++)if(second_team[i]==0){second_team[i]=nowk;break;}
}
}
goto chass;
}
else if(fg=="w"){
if(nowdw==2)nowdw=1;
goto chass;
}
else if(fg=="s"){
if(nowdw==1)nowdw=2;
goto chass;
}
else if(fg=="q"){
return;
}
}
void commonstep1(){
biandui(1);die ones[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=4;i++){ones[i].name="算法-顺序结构";ones[i].level=1;ones[i].hp=290;ones[i].fs=10;ones[i].range=30;}
fight(first_team,ones,ks,1,3,0,1,1);system("cls");
if(tis-1<=10&&win){tongw[1]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=15&&win){tongw[1]=max(2,tongw[1]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=20&&win){tongw[1]=max(1,tongw[1]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep2(){
biandui(2);die ones[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=4;i++){ones[i].name="算法-循环结构";ones[i].level=1;ones[i].hp=350;ones[i].range+=5;ones[i].fs=15;}
fight(first_team,ones,ks,1,3,0,1,1);system("cls");
if(tis-1<=10&&win){tongw[2]=3;Set(RED);cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=15&&win){tongw[2]=max(2,tongw[2]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=20&&win){tongw[2]=max(1,tongw[2]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{cout<<"------【失败】------"<<endl;}
}
void commonstep3(){
biandui(3);die ones[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=3;i++){ones[i].name="算法-循环结构-双重特化";ones[i].level=1;ones[i].hp=450;ones[i].range+=10;ones[i].fs=15;}
ones[4].name="算法-高精度集合体"; ones[4].level=1;ones[4].hp=1250;ones[4].ara+=50;ones[4].fs=25;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");
if(tis-1<=10&&win){tongw[3]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=15&&win){tongw[3]=max(2,tongw[3]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=20&&win){tongw[3]=max(1,tongw[3]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep4(){
biandui(4);die ones[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-选择排序";ones[i].level=1;ones[i].hp=700;ones[i].range-=10;ones[i].fs=15;}
ones[3].name="算法-高精度集合体"; ones[3].level=1;ones[3].hp=1250;ones[3].ara+=70;ones[3].fs=25;ones[4].name="算法-高精度集合体"; ones[4].level=1;ones[4].hp=1250;ones[4].ara=70;ones[4].fs=25;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");
if(tis-1<=10&&win){tongw[4]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=15&&win){tongw[4]=max(2,tongw[4]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=20&&win){tongw[4]=max(1,tongw[4]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep5(){
biandui(5);die ones[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-快速排序";ones[i].level=1;ones[i].hp=200;ones[i].range=55;ones[i].fast=350; ones[i].fs=10;}
ones[3].name="算法-高精度集合体"; ones[3].range=100;ones[3].level=1;ones[3].hp=1750;ones[3].ara+=120;ones[3].fs=35;ones[4].name="算法-高精度集合体"; ones[4].level=1;ones[4].range=100;ones[4].hp=1750;ones[4].ara+=120;ones[4].fs=35;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");
if(tis-1<=10&&win){tongw[5]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=15&&win){tongw[5]=max(2,tongw[5]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=20&&win){tongw[5]=max(1,tongw[5]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep6(){
biandui(6);die ones[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-快速排序";ones[i].level=1;ones[i].hp=300;ones[i].range=65;ones[i].fast=350; ones[i].fs=15;}
ones[3].name="算法-高精度集合体"; ones[3].level=1;ones[3].hp=3050;ones[3].range=150;ones[3].ara+=150;ones[3].fs=45;ones[4].name="算法-高精度集合体"; ones[4].level=1;ones[4].hp=3050;ones[4].range=150;ones[4].ara+=150;ones[4].fs=45;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");
if(tis-1<=10&&win){tongw[6]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=15&&win){tongw[6]=max(2,tongw[6]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(tis-1<=20&&win){tongw[6]=max(1,tongw[6]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep7(){
sq_biandui(7);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-快速排序";ones[i].level=1;ones[i].hp=1000;ones[i].range=185;ones[i].fast=300; ones[i].fs=55;}
ones[3].name="算法-高精度集合体"; ones[3].level=1;ones[3].range=200;ones[3].hp=5100;ones[3].ara+=200;ones[3].fs=100;ones[4].name="算法-高精度集合体"; ones[4].level=1;ones[4].hp=5100;ones[4].range=150;ones[4].ara+=200;ones[4].fs=100;
for(int i=1;i<=4;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=1200;twos[i].fs=50;twos[i].range=600;}
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losing;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tongw[7]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tongw[7]=max(2,tongw[7]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tongw[7]=max(1,tongw[7]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losing:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep8(){
sq_biandui(8);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-冒泡排序";ones[i].level=1;ones[i].hp=2500;ones[i].range=285;ones[i].fast=100; ones[i].fs=105;}
ones[3].name="算法-线段树"; ones[3].level=1;ones[3].range=300;ones[3].hp=12000;ones[3].ara+=20;ones[3].fs=180;ones[4].name="算法-dp-状态压缩"; ones[4].level=1;ones[4].hp=10000;ones[4].range=289;ones[4].ara+=100;ones[4].fs=50;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=1200;twos[i].fs=60;twos[i].range=600;}
twos[3].name="算法-高精度集合体"; twos[3].level=1;twos[3].range=250;twos[3].hp=8000;twos[3].ara+=200;twos[3].fs=100;twos[4].name="算法-高精度集合体"; twos[4].level=1;twos[4].hp=8000;twos[4].ara+=200;twos[4].fs=100;twos[4].range=250;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tongw[8]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tongw[8]=max(2,tongw[8]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tongw[8]=max(1,tongw[8]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep9(){
sq_biandui(9);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-冒泡排序";ones[i].level=1;ones[i].hp=5500;ones[i].range=485;ones[i].fast=200; ones[i].fs=155;}
ones[3].name="算法-线段树"; ones[3].level=1;ones[3].range=500;ones[3].hp=15000;ones[3].ara+=40;ones[3].fs=180;ones[4].name="算法-dp-状态压缩"; ones[4].level=1;ones[4].hp=20000;ones[4].range=489;ones[4].ara+=120;ones[4].fs=180;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=3200;twos[i].fs=100;twos[i].range=600;}
twos[3].name="算法-高精度集合体"; twos[3].level=1;twos[3].range=450;twos[3].hp=12000;twos[3].ara+=200;twos[3].fs=250;twos[4].name="算法-高精度集合体"; twos[4].level=1;twos[4].range=450;twos[4].hp=12000;twos[4].ara+=200;twos[4].fs=250;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tongw[9]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tongw[9]=max(2,tongw[9]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tongw[9]=max(1,tongw[9]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void commonstep10(){
sq_biandui(10);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-排序集合";ones[i].level=1;ones[i].hp=15500;ones[i].range=1085;ones[i].fast=250; ones[i].fs=255;}
ones[3].name="算法-线段树"; ones[3].level=1;ones[3].range=1000;ones[3].hp=25000;ones[3].ara+=60;ones[3].fs=380;ones[4].name="算法-dp-状态压缩"; ones[4].level=1;ones[4].hp=32000;ones[4].range=689;ones[4].ara+=160;ones[4].fs=280;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=5200;twos[i].fs=100;twos[i].range=600;}
twos[3].name="算法-高精度集合体"; twos[3].level=1;twos[3].range=650;twos[3].hp=22000;twos[3].ara+=250;twos[3].fs=350;twos[4].name="算法-高精度集合体"; twos[4].level=1;twos[4].range=650;twos[4].hp=22000;twos[4].ara+=250;twos[4].fs=350;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tongw[10]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tongw[10]=max(2,tongw[10]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tongw[10]=max(1,tongw[10]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void betterstep1(){
sq_biandui(1);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-排序集合";ones[i].level=1;ones[i].hp=25500;ones[i].range=1585;ones[i].fast=260; ones[i].fs=355;}
ones[3].name="算法-进阶图论"; ones[3].level=1;ones[3].range=1000;ones[3].hp=10000;ones[3].ara+=10;ones[3].fs=400;ones[4].name="算法-数据流"; ones[4].level=1;ones[4].hp=80000;ones[4].range=889;ones[4].ara+=50;ones[4].fs=380;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=9200;twos[i].fs=100;twos[i].range=600;}
twos[3].name="伪时序信徒-头领"; twos[3].level=1;twos[3].range=1250;twos[3].hp=42000;twos[3].ara+=150;twos[3].fs=550;twos[4].name="算法-高精度集合体"; twos[4].level=1;twos[4].range=1050;twos[4].hp=98000;twos[4].ara+=150;twos[4].fs=550;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tonguw[1]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tonguw[1]=max(2,tonguw[1]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tonguw[1]=max(1,tonguw[1]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void betterstep2(){
sq_biandui(2);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-插头dp";ones[i].level=1;ones[i].hp=115500;ones[i].range=1685;ones[i].fast=160; ones[i].fs=855;}
ones[3].name="算法-进阶图论"; ones[3].level=1;ones[3].range=1000;ones[3].hp=15000;ones[3].ara+=20;ones[3].fs=450;ones[4].name="算法-数据流"; ones[4].level=1;ones[4].hp=100000;ones[4].range=1089;ones[4].ara+=60;ones[4].fs=680;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=9200;twos[i].fs=100;twos[i].range=600;}
twos[3].name="伪时序信徒-头领"; twos[3].level=1;twos[3].range=1650;twos[3].hp=62000;twos[3].ara+=180;twos[3].fs=500;twos[4].name="时序天顶之星"; twos[4].level=1;twos[4].range=1050;twos[4].hp=100000;twos[4].ara+=40;twos[4].fs=850;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tonguw[1]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tonguw[1]=max(2,tonguw[1]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tonguw[1]=max(1,tonguw[1]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void betterstep3(){
sq_biandui(3);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-插头dp";ones[i].level=1;ones[i].hp=225500;ones[i].range=1685;ones[i].fast=160; ones[i].fs=955;}
ones[3].name="算法-进阶图论"; ones[3].level=1;ones[3].range=1000;ones[3].hp=13000;ones[3].ara+=20;ones[3].fs=450;ones[4].name="算法-数据流"; ones[4].level=1;ones[4].hp=120000;ones[4].range=1089;ones[4].ara+=70;ones[4].fs=980;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=9200;twos[i].fs=100;twos[i].range=600;}
twos[3].name="时序天顶之星"; twos[3].level=1;twos[3].range=1150;twos[3].hp=150000;twos[3].ara+=40;twos[3].fs=850;twos[4].name="时序天顶之星"; twos[4].level=1;twos[4].range=1150;twos[4].hp=150000;twos[4].ara+=40;twos[4].fs=850;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tonguw[3]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tonguw[3]=max(2,tonguw[3]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tonguw[3]=max(1,tonguw[3]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void betterstep4(){
sq_biandui(4);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=2;i++){ones[i].name="算法-数据流";ones[i].level=1;ones[i].hp=200000;ones[i].range=1085;ones[i].fast=260; ones[i].fs=1055;}
ones[3].name="算法-进阶图论"; ones[3].level=1;ones[3].range=1000;ones[3].hp=15000;ones[3].ara+=20;ones[3].fs=450;ones[4].name="时序天顶之星"; ones[4].level=1;ones[4].hp=180000;ones[4].range=1289;ones[4].ara+=60;ones[4].fs=980;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=10000;twos[i].fs=100;twos[i].range=600;}
twos[3].name="时序天顶之星"; twos[3].level=1;twos[3].range=1250;twos[3].hp=180000;twos[3].ara+=40;twos[3].fs=1050;twos[4].name="时序天顶之星"; twos[4].level=1;twos[4].range=1250;twos[4].hp=180000;twos[4].ara+=60;twos[4].fs=1050;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tonguw[4]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tonguw[4]=max(2,tonguw[4]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tonguw[4]=max(1,tonguw[4]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void betterstep5(){
sq_biandui(5);die ones[5],twos[5];
for(int i=1;i<=4;i++)team[i]=first_team[i];
for(int i=1;i<=3;i++){ones[i].name="算法-数据流";ones[i].level=1;ones[i].hp=250000;ones[i].range=1285;ones[i].fast=260; ones[i].fs=1555;}
ones[4].name="时序天顶之星"; ones[4].level=1;ones[4].hp=240000;ones[4].range=1389;ones[4].ara+=50;ones[4].fs=1580;
for(int i=1;i<=2;i++){twos[i].name="算法-基础图论";twos[i].level=1;twos[i].hp=13000;twos[i].fs=150;twos[i].range=700;}
twos[3].name="算法-数据流"; twos[3].level=1;twos[3].range=1050;twos[3].hp=280000;twos[3].ara+=10;twos[3].fs=1850;twos[4].name="时序天顶之星-改"; twos[4].level=1;twos[4].range=1250;twos[4].hp=300000;twos[4].ara+=20;twos[4].fs=1850;
int allti;
fight(first_team,ones,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(win==0)goto losings;else say("与此同时,另外一边....",80);Sleep(2000);
for(int i=1;i<=4;i++)team[i]=second_team[i];
fight(second_team,twos,ks,1,3,0,1,1);system("cls");allti+=tis-1;
if(allti<=10&&win){tonguw[5]=3;Set(RED); cout<<"------【优秀】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=15&&win){tonguw[5]=max(2,tonguw[5]);Set(YELLOW);cout<<"------【良好】------"<<endl;Set(WHITE);Sleep(2000);}
else if(allti<=20&&win){tonguw[5]=max(1,tonguw[5]);Set(BLUE);cout<<"------【合格】------"<<endl;Set(WHITE);Sleep(2000);}
else{losings:cout<<"------【失败】------"<<endl;Sleep(2000);}
}
void bianyis(){
int flog=1;
besd:
save();
system("cls");
cout<<"基础关卡";if(flog==1)cout<<"#";cout<<endl;
cout<<"进阶关卡";if(flog==2)cout<<"#";cout<<endl<<endl;
if(flog==1){
for(int i=1;i<=10;i++){
cout<<"基础关卡"<<i;if(tongw[i]==3)cout<<"(已通关)";cout<<endl;
}
string choses;
cout<<"(输入数字+Enter挑战对应关卡,输入k+Enter切换进阶/基础关卡,输入0+Enter退出,输入g+Enter领取当前奖励)"<<endl;
cin>>choses;
if(choses=="1")commonstep1();
else if(choses=="2")commonstep2();
else if(choses=="3")commonstep3();
else if(choses=="4")commonstep4();
else if(choses=="5")commonstep5();
else if(choses=="6")commonstep6();
else if(choses=="7")commonstep7();
else if(choses=="8")commonstep8();
else if(choses=="9")commonstep9();
else if(choses=="10")commonstep10();
else if(choses=="k"){flog=2;goto besd;}
else if(choses=="g"){
int ghj;
for(int i=1;i<=10;i++){
if(tongw[i]==3&&!jiangs[i]){
ghj++;jiangs[i]=1;
stone+=600;Exp+=10;money+=10000;
}
}
system("cls");
cout<<"获得源码*"<<ghj*600<<" 经验书*"<<ghj*10<<" 信用点*"<<ghj*10000;
Sleep(2000);
}
else return;
goto besd;
}
else if(flog==2){
for(int i=1;i<=5;i++){
cout<<"进阶关卡"<<i;if(tonguw[i]==3)cout<<"(已通关)";cout<<endl;
}
string choses;
cout<<"(输入数字+Enter挑战对应关卡,输入k+Enter切换进阶/基础关卡,输入0+Enter退出,输入g+Enter领取当前奖励)"<<endl;
cin>>choses;
if(choses=="1")betterstep1();
else if(choses=="2")betterstep2();
else if(choses=="3")betterstep3();
else if(choses=="4")betterstep4();
else if(choses=="5")betterstep5();
else if(choses=="k"){flog=1;goto besd;}
else if(choses=="g"){
int ghj;
for(int i=1;i<=5;i++){
if(tonguw[i]==3&&!jiangss[i]){
ghj++;jiangss[i]=1;
stone+=400;Exp+=12;money+=12000;
}
}
system("cls");
cout<<"获得源码*"<<ghj*400<<" 经验书*"<<ghj*12<<" 信用点*"<<ghj*12000;
Sleep(2000);
}
else return;
goto besd;
}
}
void zaoyu(int gf){
die guai1[5];
if(gf==0){
for(int i=1;i<=4;i++){
guai1[i].name="算法-顺序结构";guai1[i].level=1;
}
fight(team,guai1,ks,1,3,0,1,1);system("cls");
if(win==1){
Exp+=1;stone+=10;money+=1000;
cout<<"获得源码*10"<<" 经验书*1"<<" 信用点*1000";
}else{
say("你发现你根本打不过眼前的怪物,于是趁其不备开溜了。",50);
}
}
else if(gf==1){
for(int i=1;i<=3;i++){
guai1[i].name="算法-循环结构";guai1[i].hp=350;guai1[i].range+=10;guai1[i].level=1;
}
fight(team,guai1,ks,1,3,0,1,1);system("cls");
if(win==1){
Exp+=2;stone+=10;money+=1500;
cout<<"获得源码*10"<<" 经验书*2"<<" 信用点*1500";
}else{
say("你发现你根本打不过眼前的怪物,于是趁其不备开溜了。",50);
}
}
else if(gf==2){
for(int i=1;i<=3;i++){
guai1[i].name="算法-基础图论";guai1[i].hp=150;guai1[i].range=100;guai1[i].level=1;
}
fight(team,guai1,ks,1,3,0,1,1);system("cls");
if(win==1){
Exp+=2;stone+=10;money+=1500;
cout<<"获得源码*10"<<" 经验书*2"<<" 信用点*1500";
}else{
say("你发现你根本打不过眼前的怪物,于是趁其不备开溜了。",50);
}
}
else if(gf==3){
for(int i=1;i<=1;i++){
guai1[i].name="算法-数据流";guai1[i].hp=1050;guai1[i].range+=30;guai1[i].level=1;
}
fight(team,guai1,ks,1,3,0,1,1);system("cls");
if(win==1){
Exp+=4;stone+=20;money+=2500;
cout<<"获得源码*20"<<" 经验书*4"<<" 信用点*2500";
}else{
say("你发现你根本打不过眼前的怪物,于是趁其不备开溜了。",50);
}
}
Sleep(2000);
}
void explore(){
ac:
system("cls");
save();
if(nows==16&&bianyi){
bianyis();
system("cls");
nows=6;
}
else if(nows<=10&&nows!=7){
int fghjk=rand()%3;
if(!fghjk){
cout<<"遭遇怪物!";
Sleep(2000);
int pm=rand()%4;
zaoyu(pm);
system("cls");
}
}
cout<<"信用点:"<<money<<" "<<"源码:"<<stone<<endl;
cout<<"目前所处:"<< place[nows]<<endl;
if(nows==lists[1].pnum||place[nows]==lists[1].plac){
return;
}
int t=1,to[201]={},p=0,b;
for(int i=1;i<=200;i++){
if(a[nows][i]==1){
cout<<"[按"<<t<<"]前往"<<place[i]<<endl;
t++;
to[++p]=i;
}
}
cout<<"按p查看背包"<<endl;
cout<<"按o查看角色"<<endl;
cout<<"按r查看任务列表"<<endl;
cout<<"按y调整队伍"<<endl;
if(kkks==1)cout<<"按x打开运行";
k=_getch();
if(k=="p"){
system("cls");
for(int i=1;i<=thing;i++)cout<<bag[i].name<<" "<<"数量:"<<bag[i].num<<endl;
cout<<"按0返回"<<endl;
while(1){
k=_getch();
if(k=="0")break;
}
goto ac;
}
else if(k=="o"){
system("cls");
int f,c[15001];
t1=0;
for(int i=1;i<=1500;i++){
if(have_role[i]==1){
if(i==1)cout<<"S"<<" "<<name<<" "<<"属性:"<<shu<<" ";
else cout<<role_name[i]<<" ";
cout<<"Lv"<<had[i].level<<endl;
cout<<"已装备:";
if(had[i].hand==0)cout<<"无";
else cout<<hands[had[i].hand]<<endl;
c[++t1]=i;
cout<<"(按"<<t1<<"+Enter查看详情)"<<endl<<endl;
}
}
cout<<"按0+Enter返回"<<endl;
while(1){
cin>>k;
if(k=="0")break;
else{
for(int i=1;i<=t1;i++){
if(k==to_strings(i)){
sd:
system("cls");
if(i==1)cout<<"S"<<" "<<name<<" "<<"属性:"<<shu<<" ";
else cout<<role_name[c[i]]<<" ";
cout<<"Lv"<<had[c[i]].level<<endl;
cout<<"已装备:";
if(had[c[i]].hand==0)cout<<"无"<<endl;
cout<<jianjie[c[i]]<<endl;
cout<<"生命值:"<<had[c[i]].hp<<" "<<"攻击力:"<<had[c[i]].range<<" "<<"防御力:"<<had[c[i]].fs<<" "<<"速度:"<<had[c[i]].fast<<endl;
cout<<talent1[c[i]]<<endl<<talent2[c[i]]<<endl<<talent3[c[i]]<<endl<<zn[c[i]]<<endl<<bf[c[i]]<<endl<<endl;
cout<<"剩余经验书:"<<Exp<<endl;
if(had[c[i]].level<100){
cout<<"按1升级,按0返回"<<endl;
string lk;
while(1){
cin>>lk;
if(lk=="1"&&Exp>0&&money>=2000){
had[c[i]].level++;
Exp--;
money-=2000;
shuf(c[i]);
save();
goto sd;
}
else if(lk=="1"&&Exp<=0){
say("经验书不足!",80);
cout<<endl;
system("pause");
goto sd;
}
else if(lk=="1"&&money<2000){
say("信用点不足!",80);
cout<<endl;
system("pause");
goto sd;
}
else if(lk=="0"){
goto ac;
}
}
}
else{
cout<<"已满级(按0返回)";
string f;
while(1){
cin>>f;
if(f=="0"){
goto ac;
}
}
}
}
}
}
}
goto ac;
}
else if(k=="r"){
system("cls");
t2=0;
for(int i=1;i<=1500;i++){
if(haafe[i]==1){
cout<<t2+1<<':'<<lists[i].names<<endl<<lists[i].jie<<endl<<"地点:"<<lists[i].plac<<endl<<"奖励:"<<lists[i].jiang<<endl<<endl;
t2++;
}
}
cout<<"按0返回";
while(1){
k=_getch();
if(k=="0")break;
}
goto ac;
}
else if(k=="y"){
system("cls");
int nowk=1,sk;
string fg;
cha:
system("cls");
cout<<"目前队伍:"<<endl;
for(int i=1;i<=4;i++){
cout<<"["<<i<<"]";
if(team[i]!=0&&team[i]!=1)cout<<"Lv"<<had[team[i]].level<<" "<<role_name[team[i]]<<endl;
else if(team[i]!=0)cout<<"Lv"<<had[team[i]].level<<" "<<"S "<<name<<" 属性:"<<shu<<endl;
else {
cout<<"无"<<endl;
}
}
cout<<"(e清空队伍,ad切换角色,空格上阵角色,0返回)"<<endl;
if(nowk==1)cout<<"Lv"<<had[nowk].level<<" "<<"S "<<name<<" 属性:"<<shu;
else cout<<"Lv"<<had[nowk].level<<" "<<role_name[nowk];
fg=_getch();
if(fg=="e"){
for(int i=1;i<=4;i++)team[i]=0;
goto cha;
}
else if(fg=="a"){
for(int i=nowk-1;i>=1;i--){
if(have_role[i]!=0){
nowk=i;
break;
}
}
goto cha;
}
else if(fg=="d"){
for(int i=nowk+1;i<=1500;i++){
if(have_role[i]!=0){
nowk=i;
break;
}
}
goto cha;
}
else if(fg==" "){
bool flag=1;
for(int i=1;i<=4;i++)if(team[i]==nowk){flag=0;break;}
if(flag){
for(int i=1;i<=4;i++)if(team[i]==0){team[i]=nowk;break;}
}
goto cha;
}
else if(fg=="0"){
save();
goto ac;
}
else goto cha;
}
else if(k=="x"){
wan_e_mi_chi();
goto ac;
}
else{
cout<<endl;
for(int i=1;i<=p;i++){
if(k==to_strings(i)){
nows=to[i];
break;
}
}
goto ac;
}
}
void wa(){
cout<<endl;
while(1){
k=_getch();
if(k==" ")break;
}
}
void role1_theat1(){
system("cls");
say("(按空格可推进剧情)",0);
wa();
say("(这是...哪里...我...为什么会在这...)",80);
wa();
say("???:喂!快醒醒!",80);
wa();
say("(我...好像睡了一觉...)",80);
wa();
say("???:嗯...福斯德先生说遇到这种人,只要打一拳就好了,我试试...",80);
wa();
cout<<"[按1]别!千万别!!!"<<endl;
cout<<"[按2]你打一个试试!"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("(面前的白发少女退后两步,仔细端详着你)",80);
wa();
say("???:原来你醒了啊。",80);
wa();
cout<<"[按1]我不醒就看不见明天的太阳了。"<<endl;
while(1){
k=_getch();
if(k=="1")break;
}
system("cls");
say("白染:你听到我说话了?抱歉抱歉,团联动巡逻Oier白染,很高兴认识你。",80);
wa();
cout<<"[按1]你好。"<<endl;
cout<<"[按2]没听说过。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
if(k=="2")say("白染:欸?团联动这么不知名吗?不应该呀...算了,你叫什么名字?",80);
else say("白染:你好啊,你叫什么名字?",80);
wa();
say("(忘记了...随便编一个吧)",80);
wa();
system("cls");
cout<<"你叫......"<<endl<<"(输入你的姓名,按Enter确认)";
cin>>name;
role_name[1]=name;
system("cls");
cout<<"你的性别是......"<<endl<<"输入性别,1男,2女,按Enter确认";
cin>>xin;
system("cls");
say("白染:不错的名字呢!所以,你来到这里是为了什么呢?",80);
wa();
say(name,80);say(":我不知道...",80);
wa();
say("白染:啊?怎么比我还糊涂...算了,我先带你去见盟主,见到了你大概就想起来了。",80);
wa();
cout<<"[第一章 序幕 人铸神之伟业 已开启]"<<endl;
say("( 白染 已加入队伍)",80);
have_role[1]=have_role[2]=1;
haafe[1]=1;
lists[1].names="第一章_序幕_人铸神之伟业";lists[1].jie="跟随白染,前往团联动区";lists[1].plac="界碑谷";lists[1].pnum=2,lists[1].jiang="源码*100,经验书*2";t2++;
wa();
team[1]=2;team[2]=1;
explore();
system("cls");
system("pause");
say("(按空格可推进剧情)",0);
wa();
say("白染:快点跟上!过了界碑谷,就到团联动区了!",80);
wa();
say("(团联动...到底是个什么地方呢...)",80);
wa();
say("白染:小心!!",80);
wa();
say("白染为你挡下了一个未知生物的攻击。",80);
wa();
cout<<"[按1]你没事吧!"<<endl;
cout<<"[按2]什么东西!!"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
if(k=="1")say("白染:我没事...该死...这里怎么会出现[算法]...躲在我身后!",80);
else say("白染:该死...这里怎么会出现[算法]...躲在我身后!",80);
cout<<endl;
fight(team,jiaocheng,ks,1,3,0,1,1);
system("cls");
say("白染:解决了...没想到你的实力还不错!",80);
wa();
say("(不对...还没有结束...)",80);
wa();
say("(一只手持双刀的巨大算法怪物于前方出现)",80);
wa();
say("白染:算法构解程度至少达到上位绿级...这下有麻烦了。",80);
Sleep(2000);
cout<<endl;
fight(team,dredp,ks,1,3,0,1,1);
system("cls");
say("(算法怪物身上的气息进一步增强)",80);
wa();
say("白染:升级了...这样下去不是办法,你先离开,我来断后!",80);
wa();
cout<<"[按1]这样很危险..."<<endl;
cout<<"[按2]我不会走的。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("白染:少废话!让你走你就走!",80);
wa();
say("???:为只见过一面,可信度未知的人甘愿使自己身处险境,恕我直言,这并不是大义,而是愚钝的表现。",80);
wa();
say("(一个巨大的矩形于算法怪物之上凝聚,砸落,算法怪物被击退数米,一位手持书本的男子从后方出现)",80);
wa();
say("白染:福斯德先生!您怎么会在这?",80);
wa();
say("福斯德:这种没有意义的问题下次少问,这家伙由我来解决。",80);
wa();
say("白染:我们也来帮忙!",80);
wa();
dredp[1].hp=2500;dredp[1].range+=20;dredp[1].fs+=20;dredp[1].name="算法-dp-一维优化-增强型多重背包"; team[3]=3;
fight(team,dredp,ks,1,3,0,1,1);
team[3]=0;
system("cls");
say("(随着一声巨响,那算法怪物的身躯轰然倒下)",80);
wa();
say("白染:赢了!不愧是福斯德先生!",80);
wa();
say("福斯德:愚钝是人类的本性,而你似乎根本没有意识到这点。",80);
wa();
cout<<"[按1]你什么意思!"<<endl;
cout<<"[按2]听起来,你很拽哦。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("福斯德:那个可疑的家伙,你似乎没有资格质疑我。至少,现在没有。",80);
wa();
say("白染:那个...你别在意,福斯德先生的说话风格就是这样。他其实...",80);
wa();
say("福斯德:没什么事的话,我先走了。",80);
wa();
say("(福斯德离开)",80);
wa();
say("白染:呼~ 刚才真是好险,没想到界碑谷都能出现这种程度的算法魔物,我要赶紧去禀告九重秋鸽先生,抱歉失陪了,前面一直走就到Armaizae了,我们在那里见!",80);
wa();
say("(白染离开)",80);
wa();
cout<<"[第一章 序幕 人铸神之伟业 已完成]"<<endl;
say("已解锁功能:运行(于无尽的信息网中,找到合适的同伴,与你同行吧)",80);
kkks=1;
Sleep(2000);
stone+=100;
theat++;
lists[1].names="第一章_第一幕_宿命回响";lists[1].jie="前往Armaizae,寻找白染";lists[1].plac="Armaizae";lists[1].pnum=7,lists[1].jiang="源码*40,经验书*5,信用点*10000";
}
void role1_theat2_part1(){
system("cls");
say("(按空格可推进剧情)",0);
wa();
say("(这里就是Armaizae了吗?白染会在哪里...)",80);
wa();
say("???:这位",80);if(xin==1)say("先生,",80);else say("小姐,",80);say("请留步。",80);
wa();
cout<<"[按1]请问你是..."<<endl;
cout<<"[按2]你TM谁呀!"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("Orz_Sponge_Bob:居然忘了做自我介绍,是我疏忽了,在下Orz_Sponge_Bob,团联动维护部Oier,很荣幸见到您。",80);
wa();
cout<<"[按1]我看你多少沾点..."<<endl;
cout<<"[按2]Nice to meet you too."<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("Orz_Sponge_Bob:那么,请您配合我们的工作,出示一下您的团员证。",80);
wa();
cout<<"[按1]抱歉,我没有。"<<endl;
cout<<"[按2]我现在走还来得及吗?"<<endl;
cout<<"[按3]团什么证?"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3")break;
}
system("cls");
if(k=="3")say("Orz_Sponge_Bob:呃...总之,如果您没有团员证,是不能在团联动随意游览的,如果您不是[伪时序信徒],我们可以带您去找九重秋鸽先生办理临时团员证。",80);
else say("Orz_Sponge_Bob:请您放心,我们没有要驱逐您的意思,只是如果没有团员证,是不能在团联动随意游览的,如果您不是[伪时序信徒],我们很乐意带您去找九重秋鸽先生办理临时团员证。",80);
wa();
say(name,80);say(":所以,九重秋鸽到底是谁?",80);
wa();
say("Orz_Sponge_Bob:九重秋鸽先生是团联动之主,十年前,他将这片混乱的土地统一,建立了团联动,纵使你是外来者,也应该有所耳闻才对...莫非...",80);
wa();
say("???:诶!等等!",80);
wa();
say("(远处跑来一个白色的身影,正是白染)",80);
wa();
say("Orz_Sponge_Bob:白染?你现在不应该在界碑谷一带巡逻吗?怎么会在这里?",80);
wa();
say("白染:(喘气)事...事情是这样的...",80);
wa();
say("(白染把事情的经过说了一遍)",80);
wa();
say("Orz_Sponge_Bob:原来如此...失忆...明白了,白染...",80);
wa();
say("(远处传来一声巨响,一个巨大的白色身影冲出,那东西看着像算法魔物,可其中的力量又不太相似,跟随着的还有几个一身白衣,戴着面具的人)",80);
wa();
say("Orz_Sponge_Bob:可恶...又是这群家伙!这次,非要让你们付出点代价!",80);
wa();
shixu[1].hp=shixu[2].hp=290;shixu[3].hp=290;shixu[4].hp=2890;
fight(team,shixu,ks,1,3,0,1,1);
if(win){
system("cls");
say("(随着那个巨大身影的倒下,其余[伪时序信徒]纷纷遁逃)",80);
wa();
say("Orz_Sponge_Bob:可恶!站住!",80);
wa();
say("(只一瞬间,一股金色的光晕于地面周围荡开,接触到金光的[伪时序信徒]立刻停止奔逃,如同被静止了一般,一栋房屋的屋顶之上,一个蓝色的身影飞跃而下。)",80);
wa();
say("???:看来我来的有些迟了。",80);
wa();
say("Orz_Sponge_Bob:九重秋鸽先生...麻烦您了。",80);
wa();
say("九重秋鸽:无妨。",80);
wa();
stone+=40;Exp+=2;money+=10000; part++;
lists[1].jie="与九重秋鸽交谈,获得团员证";lists[1].plac="团联动广场-东";lists[1].pnum=11,lists[1].jiang="源码*50,经验书*2,信用点*5000";
}
else{
system("cls");
return;
}
}
void role1_theat2_part2(){
system("cls");
say("(按空格可推进剧情)",0);
wa();
say("Orz_Sponge_Bob:九重秋鸽先生,对于这些[伪时序信徒],您打算怎么处置?",80);
wa();
say("九重秋鸽:后天晚上把他们绑起来丢到寂静森,会有人来处置他们的。",80);
wa();
cout<<"[按1]等等,我..."<<endl;
cout<<"[按2]哪里走!"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
if(xin==1)say("九重秋鸽:这位先生,您有什么事吗?",80);
else say("九重秋鸽:这位美丽的小姐,您有什么事找我吗?",80);
wa();
say("Orz_Sponge_Bob:九重秋鸽先生,关于这位...",80);
wa();
say("(Orz_Sponge_Bob又把情况复述一遍)",80);
wa();
say("九重秋鸽:我明白了,不过,现在我还有工作要忙...",80);
wa();
say("(九重秋鸽掏出一张空白的团员证,递给Orz_Sponge_Bob)",80);
wa();
say("九重秋鸽:请你们帮忙,带这位",80);if(xin==1)say("先生",80);else say("小姐",80);say("去团联动大楼填补团员证吧。",80);
wa();
say("Orz_Sponge_Bob:明白。",80);
wa();
say("(Orz_Sponge_Bob等人离开,九重秋鸽摆摆手,拐入一处小巷,福斯德正倚靠在墙边,看见九重秋鸽走来,缓缓合上手中书本)",80);
wa();
say("福斯德:这么轻易就相信一个外来者,这可不是你的行事风格。",80);
wa();
say("九重秋鸽:你难道不觉得,他和一个人很像吗?",80);
wa();
say("福斯德:的确是合理的推测,但缺少具有说服力的论据。",80);
wa();
say("九重秋鸽:福斯德,我觉得,我们的转机,就要到来了...",80);
wa();
say("福斯德:不管你有什么计划,我可不会将希望全寄予可能性未知的转机上。",80);
wa();
say("九重秋鸽:和你说话还真是累人,话说,你以前有朋友吗?对你朋友也这样说话吗?",80);
wa();
say("福斯德:...与你无关。",80);
wa();
say("(与此同时,另一边...)",80);
wa();
say("Orz_Sponge_Bob:好了,我们去团联动大楼吧。",80);
wa();
stone+=50;Exp+=2;money+=5000; part++;
lists[1].jie="前往团联动大楼,填补团员证";lists[1].plac="团联动大楼";lists[1].pnum=15,lists[1].jiang="源码*50,经验书*2,信用点*5000";
}
void role1_theat2_part3(){
system("cls");
say("(按空格可推进剧情)",0);
wa();
say("(Orz_Sponge_Bob等人带你走入团联动大楼,来到一个柜台面前)",80);
wa();
say("Orz_Sponge_Bob:莎拉小姐,别来无恙。",80);
wa();
say("莎拉:是Orz_Sponge_Bob先生,好久不见,请问您要办理什么业务吗?",80);
wa();
say("Orz_Sponge_Bob:哦,这位",80);if(xin==1)say("先生",80);else say("小姐",80);say("要办理团员证,麻烦您了。",80);
wa();
say("莎拉:抱歉,Orz_Sponge_Bob先生,您应该知道团联动的规矩,没有九重秋鸽先生的许可,就算是lznxes来了,我们也不能随意给外人办理团员证。",80);
wa();
say("九重秋鸽:现在我许可了。",80);
wa();
say("(九重秋鸽出现)",80);
wa();
cout<<"[按1]影分身之术!"<<endl;
cout<<"[按2]鸣人!是你!"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("九重秋鸽:这位真是幽默风趣,这只是个全息投影装置,要是会那种东西,我还会天天忙的打转?总之,莎拉,按Orz_Sponge_Bob说的办。",80);
wa();
say("莎拉:是,九重秋鸽先生。",80);
wa();
say("九重秋鸽:我还有事,先不聊了。",80);
wa();
say("(九重秋鸽的投影消散)",80);
wa();
say("莎拉:那么,这位",80);if(xin==1)say("先生",80);else say("小姐",80);say(",姓名,年龄。",80);
wa();
say("白染:我知道我知道,",80);if(xin==1)say("他",80);else say("她",80);say("叫",80);say(name,80);say(",年龄......",80);
wa();
cout<<"[按1]刚满十八岁。"<<endl;
cout<<"[按2]我不到啊。"<<endl;
cout<<"[按3]问别人年龄很不礼貌的。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3")break;
}
system("cls");
if(k=="1")say("白染:胡说,你看起来比我都大,肯定多于20岁!还有,你不是失忆了吗!",80);
else if(k=="3")say("白染:其实你就是不知道吧...",80);
else say("白染:我就知道。",80);
wa();
say("莎拉:如果不知道年龄的话,可以试试这个。",80);
wa();
say("(莎拉拿出了一个金属圆球)",80);
wa();
say("白染:诶?这是什么?",80);
wa();
say("莎拉:年龄测定球,福斯德先生的发明,可以通过接触来测量有机生命体的生长情况从而推算出年龄,您可以试试。",80);
wa();
cout<<"[按1]让我看看怎么个事。"<<endl;
cout<<"[按2]好,我测。"<<endl;
cout<<"[按3]这年龄测定球不大,不小,外表好极了。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3")break;
}
system("cls");
say("(你将手放在年龄测定球上)",80);
wa();
say("(年龄测定球毫无反应)",80);
wa();
say("莎拉:奇怪.....以前从没出现过这种状况....",80);
wa();
say("Orz_Sponge_Bob:行了,时间不早了,年龄那一栏先空着,有时间再填。",80);
wa();
say("莎拉:好吧...",80);
wa();
say("(一段时间后,总算填好了团员证...)",80);
wa();
say("Orz_Sponge_Bob:好了,现在,欢迎你加入团联动,按九重秋鸽先生的嘱咐,你应该加入核心部门。接下来我会问你几个问题,来测试你适合加入哪个部门。",80);
wa();
cout<<"[按1]总共有几个部门?"<<endl;
while(1){
k=_getch();
if(k=="1")break;
}
system("cls");
say("Orz_Sponge_Bob:团联动有七大核心部门,分别为维护部,执行部,侦察部,战略部,巡卫部,特勤部,后勤部。你准备好了吗?",80);
wa();
cout<<"[按1]准备好了!"<<endl;
cout<<"[按2]差不多了。"<<endl;
cout<<"[按3]反正我无所谓。"<<endl;
cout<<"[按4]行。"<<endl;
cout<<"[按5]可能吧..."<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3"||k=="4"||k=="5")break;
}
system("cls");
int kpl;
if(k=="1")kpl+=2;else if(k=="2")kpl++;else if(k=="4")kpl--;else if(k=="5")kpl-=2;
say("Orz_Sponge_Bob:好,我开始了。第一个问题,假如你和你的同伴无意间遇见了一件你们追求了很久的东西,你会怎么做?",80);
wa();
cout<<"[按1]当然是把握住机会。"<<endl;
cout<<"[按2]那要看这个东西对我而言重不重要。"<<endl;
cout<<"[按3]肯定有诈,我不会去冒险。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3")break;
}
system("cls");
if(k=="1")kpl++;else if(k=="3")kpl--;
say("Orz_Sponge_Bob:我明白了,第二个问题,假如你和你的同伴遇见了无法战胜的强敌,你会怎么做?",80);
wa();
cout<<"[按1]与同伴一起战斗到底!"<<endl;
cout<<"[按2]拖住对手,让同伴逃跑。"<<endl;
cout<<"[按3]与对手谈判,尝试以理服人。"<<endl;
cout<<"[按4]和同伴一起寻找机会逃跑。"<<endl;
cout<<"[按5]丢下同伴开溜。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3"||k=="4"||k=="5")break;
}
system("cls");
if(k=="1")kpl+=2;else if(k=="2")kpl++;else if(k=="4")kpl--;else if(k=="5")kpl-=2;
say("Orz_Sponge_Bob:我明白了,最后一个问题,假如你和你的同伴要去执行一个任务,你在出发前提前得知了这次旅途的终点,你们什么都无法改变,一切都将以悲剧收场,你还会踏上这趟旅途吗?",80);
wa();
cout<<"[按1]我会义无反顾地继续前行。"<<endl;
cout<<"[按2]我不相信什么事情是命中注定的。"<<endl;
cout<<"[按3]仔细评估消息的真实性再做决定。"<<endl;
cout<<"[按4]这不是我能决定的。"<<endl;
cout<<"[按5]我不会出发。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3"||k=="4"||k=="5")break;
}
system("cls");
if(k=="1")kpl+=2;else if(k=="2")kpl++;else if(k=="4")kpl--;else if(k=="5")kpl-=2;
say("Orz_Sponge_Bob:我明白了,那么,最适合你的部门是",80);
if(kpl>=6){say("执行部。",80);bumen=1;}
else if(kpl>=4){say("巡卫部。",80);bumen=2;}
else if(kpl>=2){say("侦察部。",80);bumen=3;}
else if(kpl>=-1){say("维护部。",80);bumen=4;}
else if(kpl>=-3){say("特勤部。",80);bumen=5;}
else if(kpl>=-5){say("战略部。",80);bumen=6;}
else{say("后勤部。",80);bumen=7;}
if(bumen==1){wa();say("白染:太好了!这样以后我们就是同伴了!",80);}
else if(bumen==4)say("欢迎你加入。",80);
wa();
say("Orz_Sponge_Bob:",80);
if(bumen==1)say("成为执行部成员需要时刻冲在第一线,将生命置之度外,与任何邪恶与不公斗争,希望你能够胜任。",80);
else if(bumen==2)say("巡卫部成员的主要任务是守护,守护目之所及的一切事物,需要拥有强大的心理素质,希望你能够胜任。",80);
else if(bumen==3)say("成为侦察部成员需要拥有敏锐的洞察力和强大的信息收集能力,除了收集情报外还要协助执行部作战,希望你能够胜任。",80);
else if(bumen==4)say("维护部成员负责维护治安稳定,需要更多冷静的思考,希望你能够胜任。",80);
else if(bumen==5)say("特勤部需要处理许多暗处的工作,需要拥有强大的实力和谨慎的行为,希望你能够胜任。",80);
else if(bumen==6)say("战略部成员负责统筹战局,要有足够的谋略和军事素养,希望你能够胜任。",80);
else if(bumen==7)say("后勤部成员虽然不用上前线,但也至关重要,希望你能够胜任。",80);
wa();
say("白染:这样就算正式加入了吧?跟我来跟我来,我带你看看我们团队的训练装置!",80);
wa();
say("(还没等你反应,白染就抓起你的手,将你拉了出去)",80);
wa();
stone+=50;Exp+=2;money+=5000; part++;
lists[1].jie="去看看白染说的训练装置";lists[1].plac="kommy之圣城-编译区";lists[1].pnum=16,lists[1].jiang="源码*100,经验书*3,信用点*10000";
}
void role1_theat2_part4(){
system("cls");
say("(按空格可推进剧情)",0);
wa();
say("白染:好了!就是这里!",80);
wa();
say("困倦的Oier:呃...啊...啊!两位是来进行编译的吗?",80);
wa();
say("白染:查尔斯!是我!你怎么这么没干劲!这里可是团联动!提起精神来!",80);
wa();
say("查尔斯:诶呦,姑奶奶,您可别提了,我都已经三张红条了,现在全团都在忙着打[伪时序信徒],都没人来编译了,再不完成这个月的业绩,我就要被炒了...",80);
wa();
say("白染:行了,我们就是来编译的,我认识了个新朋友,带",80);if(xin==1)say("他",80); else say("她",80);say("来体验体验。",80);
wa();
say("查尔斯:得嘞!两位先在外面等候,我调试下程序,一会就好!",80);
wa();
say("白染:我和你说,这编译运用了虚拟现实技术,100%拟真真实战斗场景,不仅好玩,还能锻炼战斗技巧!",80);
wa();
say("查尔斯:完事了!两位请进!",80);
nows=6;wa();
say("白染:好了,我们进去吧!",80);
wa();
stone+=100;Exp+=3;money+=10000; part++;
lists[1].jie="体验编译";lists[1].plac="kommy之圣城-编译区";lists[1].pnum=16,lists[1].jiang="源码*150,经验书*2";
}
void role1_theat2_part5(){
system("cls");
say("(按空格可推进剧情)",0);
wa();
say("查尔斯:两位准备好了吗?",80);
wa();
say("白染:准备好了!",80);
wa();
say("查尔斯:好的!我们马上开始!",80);
Sleep(2000);
for(int i=1;i<=3;i++){
bianyichu[i].name="算法-循环结构-双重特化";bianyichu[i].level=1;bianyichu[i].hp=450;bianyichu[i].ara=10;
}
fight(team,bianyichu,ks,1,3,0,1,1);
system("cls");
say("查尔斯:体验结束了,两位。",80);
wa();
say("白染:怎么样?好玩吗?",80);
wa();
cout<<"[按1]有点无聊..."<<endl;
cout<<"[按2]我不会喜欢一个没有DLC的买断制游戏。"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("白染:好像确实是这样,一直以来都只有那几个关卡...",80);
wa();
say("查尔斯:感谢两位让我开张,如果没事的话,就请离开吧。",80);
wa();
cout<<"[按1]你要么更新一下版本?"<<endl;
cout<<"[按2]要不把[伪时序信徒]做进去?"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2")break;
}
system("cls");
say("查尔斯:好像确实需要更新一下...不断变化才能吸引玩家...可是,光是结合普通[伪时序信徒],也没多少人愿意买单...",80);
wa();
say("白染:欸,",80);say(name,80);say(",你还记得我们之前打的那个,白色的大家伙吗?",80);
wa();
say("(和查尔斯说了关于时序天顶之星的信息)",80);
wa();
say("查尔斯:巨大的白色机甲...一听就很酷!我已经有灵感了!",80);
wa();
say("(查尔斯开始敲代码)",80);
wa();
say("(几小时后...)",80);
wa();
say("查尔斯:完成了!全新的关卡!",80);
wa();
say("白染:怎么感觉你夹带了好多私货...",80);
wa();
say("查尔斯:两位!请务必帮我测试!不收你们信用点...不对,我倒贴!",80);
wa();
say("白染:信用点就免了,我们帮你测就是。",80);
wa();
say("查尔斯:真是太感谢了!那么——我们现在开始!",80);
wa();
die shixuch[5];
for(int i=1;i<=3;i++){
shixuch[i].name="伪时序信徒"; shixuch[i].level=1;shixuch[i].hp=350;shixuch[i].range=45;shixuch[i].fs=15;
}
shixuch[4].name="时序天顶之星-改";shixuch[4].hp=3500;shixuch[4].level=1;shixuch[4].range=55;shixuch[4].ara=25;shixuch[4].fs=25;
fight(team,shixuch,ks,1,3,0,1,1);
system("cls");
say("查尔斯:体验结束,两位有何感想?",80);
wa();
cout<<"[按1]一般,下次还填非常简单。"<<endl;
cout<<"[按2]这强度不削能玩?"<<endl;
cout<<"[按3]此时我只想说:一无所有,或者赢下所有!"<<endl;
while(1){
k=_getch();
if(k=="1"||k=="2"||k=="3")break;
}
system("cls");
say("白染:嗯...虽然是难了一点,但比之前的关卡好玩多了。",80);
wa();
say("查尔斯:感谢两位,这一次,我绝不会被炒!两位要是有新的灵感,记得来告诉我!",80);
wa();
say("白染:我们会的!",80);say(name,80);say(",我们走吧。",80);
wa();
cout<<"[第一章 第一幕 宿命回响 已完成]"<<endl;
say("已解锁功能:编译(你也许可以叫它深境螺旋或忘却之庭 于kommy之圣城-编译区进行)",80);
bianyi=1;
nows=6;
stone+=150;Exp+=3; part=1;theat=2;
lists[1].names="第一章_第二幕_皇冠之重(未完成)";lists[1].jie="九重秋鸽似乎有事找你,去看看";lists[1].plac="Armaizae";lists[1].pnum=114514,lists[1].jiang="源码*100,经验书*3,信用点*10000";
Sleep(2000);
}
int main(){
CONSOLE_CURSOR_INFO cursor_info={1,0};
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
srand((unsigned int)time(NULL));
jiaocheng[1].name=jiaocheng[2].name="算法-顺序结构";jiaocheng[3].name="算法-循环结构";jiaocheng[1].level=jiaocheng[2].level=jiaocheng[3].level=1;jiaocheng[3].hp+=100;dredp[1].name="算法-dp-增强型多重背包";dredp[1].level=15;dredp[1].hp+=1000;dredp[1].ara+=100;dredp[1].fs+=20;shixu[1].name=shixu[2].name=shixu[3].name="伪时序信徒";shixu[1].level=shixu[2].level=shixu[3].level=1;shixu[4].name="时序天顶之星";shixu[4].hp+=2600;shixu[4].level=1;shixu[4].range+=15;shixu[4].ara+=20;shixu[4].fs+=20;
a[1][2]=a[2][1]=a[2][3]=a[3][2]=a[2][4]=a[4][2]=a[3][5]=a[5][3]=a[4][5]=a[5][4]=a[5][6]=a[6][5]=a[5][8]=a[8][5]=a[8][9]=a[9][8]=a[8][10]=a[10][8]=a[9][10]=a[10][9]=a[10][7]=a[7][10]=a[6][8]=a[8][6]=a[7][11]=a[11][7]=a[11][13]=a[13][11]=a[11][14]=a[14][11]=a[13][12]=a[12][13]=a[14][12]=a[12][14]=a[12][15]=a[15][12]=a[6][16]=a[16][6]=1;
Set(RED);
had[1].hp=206;had[1].range=101;had[1].fs=28;had[1].fast=180;had[2].hp=198;had[2].range=98;had[2].fs=19;had[2].fast=220;had[2].ara=20;had[2].afs=-20;had[3].hp=225;had[3].range=119;had[3].fs=24;had[3].fast=250;had[4].hp=210;had[4].range=111;had[4].fs=34;had[4].fast=175;had[5].hp=200;had[5].range=89;had[5].fs=30;had[5].fast=300;had[6].hp=250;had[6].range=85;had[6].fs=60;had[6].fast=120;had[7].hp=150;had[7].range=110;had[7].fs=9;had[7].fast=270;had[8].hp=190;had[8].range=100;had[8].fs=10;had[8].fast=250;had[9].hp=169;had[9].range=121;had[9].fs=21;had[9].fast=450;had[10].hp=200;had[10].range=110;had[10].fs=22;had[10].fast=400;had[11].hp=180;had[11].range=85;had[11].fs=25;had[11].fast=400;had[12].hp=199;had[12].range=105;had[12].fs=25;had[12].fast=255;had[13].hp=190;had[13].range=105;had[13].fs=10;had[13].fast=300;had[13].ara=10;had[14].hp=180;had[14].range=105;had[14].fs=12;had[14].fast=370;
cout<<" oooo III"<<endl;
cout<<" o o I"<<endl;
cout<<" o o I"<<endl;
cout<<" o o I"<<endl;
cout<<" oooo III ";
Set(WHITE);
for(int i=1;i<=1500;i++){
lists[i].names=lists[i].plac=lists[i].jie=lists[i].jiang="#";
}
read();
check();
cout<<"之路(fsd匠心之作)"<<endl<<endl;
cout<<"按k开始游戏";
role_name[1]=name;
k=_getch();
if(k=="k"){
if(role==1&&theat==1){
role1_theat1();
save();
}
ertd:
explore();
if(role==1&&theat==2&&part==1){
role1_theat2_part1();
save();
if(!win){
nows=6;
goto ertd;
}
}
sdf:
explore();
if(role==1&&theat==2&&part==2){
role1_theat2_part2();
save();
}
explore();
if(role==1&&theat==2&&part==3){
role1_theat2_part3();
save();
}
explore();
if(role==1&&theat==2&&part==4){
role1_theat2_part4();
save();
}
explore();
if(role==1&&theat==2&&part==5){
role1_theat2_part5();
save();
}
explore();
}
}