GAME

#include<bits/stdc++.h> #include<windows.h> #include<cstring> #include<fstream> #include<cstdio> #include<iostream> #include<cstdlib> #include<conio.h> using namespace std; int jtcnt,dwcnt,xzgj,l,g2j[101],nian,yue,ri; char op; vector<int>v[90],lin[99]; bool lt[90][90],zz[90][90],sile[99],fs[900]; int tu[90][90],jts[90],yffx[90],zdl[90][90]; static int sj1,sj2,sj3,sj4; int yffy[30][10][10],X,Y; string gjm[99]; struct scdw { int lx; int xh; int ys; }; queue<scdw>sc[90]; void up(); struct danwei { int zl,xh,hp,mb,mbsj,gj; }dw[19999999]; bool yfi[30][10],yft[30][10],yfa[30][10]; void tys(int tj) //0:red 1:red2 2:blue 3:blue2 4:green 5:green2 6:yelow 7:yelow2 8:pink1 9:pink2 10:blak 11 gray 12:ziqing 13:ziqing2 { if(tj==0){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_INTENSITY |FOREGROUND_RED |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==1){SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_RED |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==2){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_INTENSITY |FOREGROUND_BLUE |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==3){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_BLUE |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==4){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_GREEN |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==5){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_INTENSITY |FOREGROUND_GREEN |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==6){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_GREEN |FOREGROUND_RED |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==7){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_GREEN |FOREGROUND_INTENSITY |FOREGROUND_RED |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==8){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_BLUE |FOREGROUND_RED |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==9){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_BLUE |FOREGROUND_INTENSITY |FOREGROUND_RED |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==10){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==11){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_INTENSITY |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==12){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_RED |FOREGROUND_GREEN |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } if(tj==13){ SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),( FOREGROUND_RED |FOREGROUND_INTENSITY |FOREGROUND_GREEN |BACKGROUND_INTENSITY| BACKGROUND_BLUE|BACKGROUND_RED|BACKGROUND_GREEN)); } } vector<int>jd[99]; struct chengshi { string nm; int gj,ic,rk,hp,kj,rkzz; }cs[99]; struct wq { string nm; int zdl; int hp; int sd; int xh; }I[25][50],A[25][50],T[25][50],D[25][50]; int dykj[99]; void yx(); void shj(); int main() { int i; srand(time(0)); system("color F4"); for(i=1;i<=22;i++) {yffy[i][1][1]=1000;yffy[i][1][2]=2000; yffy[i][1][3]=4000; yffy[i][1][4]=10000; yffy[i][1][5]=20000; yffy[i][2][2]=2000; yffy[i][2][3]=8000; yffy[i][2][4]=20000; yffy[i][2][5]=48000; yffy[i][3][1]=3000; yffy[i][3][2]=10000; yffy[i][3][3]=60000; yffy[i][3][4]=120000; yffy[i][3][5]=360000; } for(i=1;i<=50;i++)g2j[i]=4; gjm[1]="秦";gjm[2]="东斯拉夫人";gjm[3]="毛人"; gjm[9]="罗马共和国"; gjm[8]="高丽"; gjm[4]="希腊"; gjm[5]="波斯帝国"; gjm[6]="孔雀王朝"; gjm[7]="马其顿王国"; gjm[10]="日耳曼人";gjm[11]="不列颠人";gjm[12]="迦太基";gjm[13]="玛雅"; gjm[14]="匈奴";gjm[15]="蜀"; gjm[16]="大越";gjm[17]="楚"; gjm[18]="北燕"; gjm[19]="齐";gjm[20]="维京";gjm[21]="基辅罗斯" ; gjm[22]="凯尔特人";gjm[23]="伊比利亚人"; gjm[24]="神圣罗马帝国";gjm[25]="拜占庭帝国";sile[24]=1;sile[25]=1;sile[21]=1; g2j[1]=1; g2j[2]=2;g2j[3]=3;g2j[5]=5;g2j[6]=5;g2j[8]=1;g2j[12]=5;g2j[15]=2;g2j[18]=1;g2j[16]=1;g2j[13]=6;g2j[14]=2;g2j[17]=1;g2j[18]=1;g2j[19]=1; I[1][1].nm="中华长矛兵";I[1][1].zdl= 10 ;I[1][1].hp= 30 ; I[1][1].sd= 1 ; I[1][1].xh= 12 ; I[1][2].nm="中华长刀兵";I[1][2].zdl= 30 ;I[1][2].hp= 30 ; I[1][2].sd= 1 ; I[1][2].xh= 20 ; I[1][3].nm="诸葛弩兵";I[1][3].zdl= 70;I[1][3].hp= 50 ; I[1][3].sd= 1 ; I[1][3].xh= 38 ; I[1][4].nm="突火枪兵";I[1][4].zdl= 120 ;I[1][4].hp= 100 ; I[1][4].sd= 1 ; I[1][4].xh= 50 ; I[1][5].nm="铜火铳兵";I[1][5].zdl= 225 ;I[1][5].hp= 130 ; I[1][5].sd= 1 ; I[1][5].xh= 70 ; I[2][1].nm="刀盾兵";I[2][1].zdl= 9 ;I[2][1].hp= 15 ; I[2][1].sd= 1 ; I[2][1].xh= 8 ; I[2][2].nm="矛盾兵";I[2][2].zdl= 25 ;I[2][2].hp= 25 ; I[2][2].sd= 1 ; I[2][2].xh= 20 ; I[2][3].nm="弓兵";I[2][3].zdl= 60 ;I[2][3].hp= 50 ; I[2][3].sd= 1 ; I[2][3].xh= 38 ; I[2][4].nm="火器兵";I[2][4].zdl= 108 ;I[2][4].hp= 110 ; I[2][4].sd= 1 ; I[2][4].xh= 50 ; I[2][5].nm="火枪兵";I[2][5].zdl= 200 ;I[2][5].hp= 140 ; I[2][5].sd= 1 ; I[2][5].xh= 70 ; I[3][1].nm="长刀兵";I[3][1].zdl= 10 ;I[3][1].hp= 29 ; I[3][1].sd= 1 ; I[3][1].xh= 12 ; I[3][2].nm="薙刀兵";I[3][2].zdl= 28 ;I[3][2].hp= 29 ; I[3][2].sd=1 ; I[3][2].xh= 20 ; I[3][3].nm="日本武士";I[3][3].zdl= 90 ;I[3][3].hp= 140 ; I[3][3].sd= 1 ; I[3][3].xh= 60 ; I[3][4].nm="手铳兵";I[3][4].zdl= 105 ;I[3][4].hp= 100 ; I[3][4].sd= 1 ; I[3][4].xh= 50 ; I[3][5].nm="萨摩铳兵";I[3][5].zdl= 240 ;I[3][5].hp= 120 ; I[3][5].sd= 1 ; I[3][5].xh= 80 ; I[4][1].nm="方阵兵";I[4][1].zdl= 30 ;I[4][1].hp= 50 ; I[4][1].sd= 1 ; I[4][1].xh= 20 ; I[4][2].nm="都卜勒武士";I[4][2].zdl= 55 ;I[4][2].hp= 100 ; I[4][2].sd= 1 ; I[4][2].xh= 36 ; I[4][3].nm="长弓兵";I[4][3].zdl= 65 ;I[4][3].hp= 70 ; I[4][3].sd= 1 ; I[4][3].xh= 30 ; I[4][4].nm="线列兵";I[4][4].zdl= 100 ;I[4][4].hp= 120 ; I[4][4].sd= 1 ; I[4][4].xh= 50 ; I[4][5].nm="火枪兵";I[4][5].zdl= 250 ;I[4][5].hp= 200 ; I[4][5].sd= 1 ; I[4][5].xh= 70 ; I[5][1].nm="短刀兵";I[5][1].zdl= 10 ;I[5][1].hp= 28 ; I[5][1].sd= 1 ; I[5][1].xh= 12 ; I[5][2].nm="长刀兵";I[5][2].zdl= 29 ;I[5][2].hp= 28 ; I[5][2].sd= 1 ; I[5][2].xh= 20 ; I[5][3].nm="弓箭兵";I[5][3].zdl= 50 ;I[5][3].hp= 50 ; I[5][3].sd= 1 ; I[5][3].xh= 38 ; I[5][4].nm="佩刀铳兵";I[5][4].zdl= 110 ;I[5][4].hp= 100 ; I[5][4].sd= 1 ; I[5][4].xh= 50 ; I[5][5].nm="改进铳兵";I[5][5].zdl= 190 ;I[5][5].hp= 115 ; I[5][5].sd= 1 ; I[5][5].xh= 70 ; I[6][1].nm="原始人";I[6][1].zdl= 9 ;I[6][1].hp= 25 ; I[6][1].sd= 1 ; I[6][1].xh= 10 ; I[6][2].nm="长矛兵";I[6][2].zdl= 25 ;I[6][2].hp= 30 ; I[6][2].sd= 1 ; I[6][2].xh= 18 ; I[6][3].nm="吹箭兵";I[6][3].zdl= 45 ;I[6][3].hp= 40 ; I[6][3].sd= 1 ; I[6][3].xh= 32 ; I[6][4].nm="土著火器兵";I[6][4].zdl= 100 ;I[6][4].hp= 90 ; I[6][4].sd= 1 ; I[6][4].xh= 46 ; I[6][5].nm="枪兵";I[6][5].zdl= 180 ;I[6][5].hp= 120 ; I[6][5].sd= 1 ; I[6][5].xh= 65 ; A[1][1].nm="投石车";A[1][1].zdl= 30 ;A[1][1].hp= 15 ; A[1][1].sd= 1 ; A[1][1].xh= 14 ; A[1][2].nm="攻城锤";A[1][2].zdl= 50 ;A[1][2].hp= 100 ; A[1][2].sd= 1 ; A[1][2].xh= 50 ; A[1][3].nm="投石机";A[1][3].zdl= 70;A[1][3].hp= 30 ; A[1][3].sd= 1 ; A[1][3].xh= 40 ; A[1][4].nm="火铳";A[1][4].zdl= 200 ;A[1][4].hp= 30 ; A[1][4].sd= 1 ; A[1][4].xh= 60 ; A[1][5].nm="虎蹲炮";A[1][5].zdl= 250 ;A[1][5].hp= 90 ; A[1][5].sd= 1 ; A[1][5].xh= 66 ; A[2][1].nm="投石车";A[2][1].zdl= 30 ;A[2][1].hp= 15 ; A[2][1].sd= 1 ; A[2][1].xh= 14 ; A[2][2].nm="攻城锤";A[2][2].zdl= 50 ;A[2][2].hp= 100 ; A[2][2].sd= 1 ; A[2][2].xh= 50 ; A[2][3].nm="投石机";A[2][3].zdl= 70 ;A[2][3].hp= 30 ; A[2][3].sd= 1 ; A[2][3].xh= 40 ; A[2][4].nm="石炮";A[2][4].zdl= 160 ;A[2][4].hp= 40 ; A[2][4].sd= 1 ; A[2][4].xh= 58 ; A[2][5].nm="榴弹炮";A[2][5].zdl= 290 ;A[2][5].hp= 70 ; A[2][5].sd= 3 ; A[2][5].xh= 70 ; A[3][1].nm="投石车";A[3][1].zdl= 30 ;A[3][1].hp= 15 ; A[3][1].sd= 1 ; A[3][1].xh= 14 ; A[3][2].nm="攻城锤";A[3][2].zdl= 50 ;A[3][2].hp= 100 ; A[3][2].sd=1 ; A[3][2].xh= 50 ; A[3][3].nm="投石机";A[3][3].zdl= 70 ;A[3][3].hp= 30 ; A[3][3].sd= 1 ; A[3][3].xh= 40 ; A[3][4].nm="仿制火铳";A[3][4].zdl= 180 ;A[3][4].hp= 40 ; A[3][4].sd= 1 ; A[3][4].xh= 60 ; A[3][5].nm="仿欧榴弹炮";A[3][5].zdl= 270 ;A[3][5].hp= 70 ; A[3][5].sd= 1 ; A[3][5].xh= 70 ; A[4][1].nm="投石车";A[4][1].zdl= 30 ;A[4][1].hp= 15 ; A[4][1].sd= 1 ; A[4][1].xh= 14 ; A[4][2].nm="攻城锤";A[4][2].zdl= 50 ;A[4][2].hp= 100 ; A[4][2].sd= 1 ; A[4][2].xh= 50 ; A[4][3].nm="投石机";A[4][3].zdl= 70 ;A[4][3].hp= 30 ; A[4][3].sd= 1 ; A[4][3].xh= 40 ; A[4][4].nm="铅弹炮";A[4][4].zdl= 180 ;A[4][4].hp= 40 ; A[4][4].sd= 1 ; A[4][4].xh= 64 ; A[4][5].nm="榴弹炮";A[4][5].zdl= 300 ;A[4][5].hp= 70 ; A[4][5].sd= 1 ; A[4][5].xh= 75 ; A[5][1].nm="投石车";A[5][1].zdl= 30 ;A[5][1].hp= 15 ; A[5][1].sd= 1 ; A[5][1].xh= 14 ; A[5][2].nm="攻城锤";A[5][2].zdl= 50 ;A[5][2].hp= 100 ; A[5][2].sd= 1 ; A[5][2].xh= 50 ; A[5][3].nm="投石机";A[5][3].zdl= 70 ;A[5][3].hp= 30 ; A[5][3].sd= 1 ; A[5][3].xh= 40 ; A[5][4].nm="石炮";A[5][4].zdl= 160 ;A[5][4].hp= 40 ; A[5][4].sd= 1 ; A[5][4].xh= 58 ; A[5][5].nm="仿欧榴弹炮";A[5][5].zdl= 270 ;A[5][5].hp= 70 ; A[5][5].sd= 1 ; A[5][5].xh= 70 ; A[6][1].nm="投石车";A[6][1].zdl= 30 ;A[6][1].hp= 15 ; A[6][1].sd= 1 ; A[6][1].xh= 14 ; A[6][2].nm="攻城锤";A[6][2].zdl= 50 ;A[6][2].hp= 100 ; A[6][2].sd= 1 ; A[6][2].xh= 50 ; A[6][3].nm="弩车";A[6][3].zdl= 70 ;A[6][3].hp= 30 ; A[6][3].sd= 1 ; A[6][3].xh= 40 ; A[6][4].nm="石炮";A[6][4].zdl= 160 ;A[6][4].hp= 40 ; A[6][4].sd= 1 ; A[6][4].xh= 58 ; A[6][5].nm="火炮";A[6][5].zdl= 260 ;A[6][5].hp= 70 ; A[6][5].sd= 1 ; A[6][5].xh=70 ; T[1][1].nm="骑矛兵";T[1][1].zdl= 12 ;T[1][1].hp= 50 ; T[1][1].sd= 3 ; T[1][1].xh= 29 ; T[1][2].nm="铠甲骑兵";T[1][2].zdl= 30 ;T[1][2].hp= 90 ; T[1][2].sd= 3 ; T[1][2].xh= 38 ; T[1][3].nm="弩骑兵";T[1][3].zdl= 70 ;T[1][3].hp= 100 ; T[1][3].sd= 3 ; T[1][3].xh= 55 ; T[1][4].nm="铳骑兵";T[1][4].zdl= 120 ;T[1][4].hp= 200 ; T[1][4].sd= 3 ; T[1][4].xh= 68 ; T[1][5].nm="铳战车";T[1][5].zdl= 235 ;T[1][5].hp= 350 ; T[1][5].sd= 3 ; T[1][5].xh= 110 ; T[2][1].nm="骑刀兵";T[2][1].zdl= 10 ;T[2][1].hp= 50 ; T[2][1].sd= 3 ; T[2][1].xh= 28 ; T[2][2].nm="骑射手";T[2][2].zdl= 25 ;T[2][2].hp= 90 ; T[2][2].sd= 3 ; T[2][2].xh= 36 ; T[2][3].nm="蒙古铁骑";T[2][3].zdl= 90 ;T[2][3].hp= 200 ; T[2][3].sd= 3 ; T[2][3].xh= 78 ; T[2][4].nm="哥萨克骑兵";T[2][4].zdl= 120 ;T[2][4].hp= 280 ; T[2][4].sd= 3 ; T[2][4].xh= 80 ; T[2][5].nm="炮战车";T[2][5].zdl= 250 ;T[2][5].hp= 350 ; T[2][5].sd= 3 ; T[2][5].xh= 125 ; T[3][1].nm="骑矛兵";T[3][1].zdl= 10 ;T[3][1].hp= 50 ; T[3][1].sd= 3 ; T[3][1].xh= 28 ; T[3][2].nm="骑盾兵";T[3][2].zdl= 25 ;T[3][2].hp= 100 ; T[3][2].sd= 3 ; T[3][2].xh= 40 ; T[3][3].nm="大名";T[3][3].zdl= 80 ;T[3][3].hp= 160 ; T[3][3].sd= 3 ; T[3][3].xh= 70 ; T[3][4].nm="枪骑兵";T[3][4].zdl= 100 ;T[3][4].hp= 200 ; T[3][4].sd= 3 ; T[3][4].xh= 80 ; T[3][5].nm="战车";T[3][5].zdl= 250 ;T[3][5].hp= 340 ; T[3][5].sd= 3 ; T[3][5].xh= 125 ; T[4][1].nm="骑剑兵";T[4][1].zdl= 13 ;T[4][1].hp= 50 ; T[4][1].sd= 3 ; T[4][1].xh= 30 ; T[4][2].nm="骑士";T[4][2].zdl= 40 ;T[4][2].hp= 85 ; T[4][2].sd= 3 ; T[4][2].xh= 40 ; T[4][3].nm="圣骑士";T[4][3].zdl= 100 ;T[4][3].hp= 230 ; T[4][3].sd= 3 ; T[4][3].xh= 98 ; T[4][4].nm="龙骑兵";T[4][4].zdl= 110 ;T[4][4].hp= 230 ; T[4][4].sd= 3 ; T[4][4].xh= 100 ; T[4][5].nm="战车";T[4][5].zdl= 260 ;T[4][5].hp= 360 ; T[4][5].sd= 3 ; T[4][5].xh= 130 ; T[5][1].nm="骆驼骑兵";T[5][1].zdl= 20 ;T[5][1].hp= 60 ; T[5][1].sd= 3 ; T[5][1].xh= 48 ; T[5][2].nm="象骑兵";T[5][2].zdl= 50 ;T[5][2].hp= 160 ; T[5][2].sd= 3 ; T[5][2].xh= 70 ; T[5][3].nm="盔甲象骑兵";T[5][3].zdl= 70 ;T[5][3].hp= 280 ; T[5][3].sd= 3 ; T[5][3].xh= 100 ; T[5][4].nm="火器骑兵";T[5][4].zdl= 100 ;T[5][4].hp= 200 ; T[5][4].sd= 3 ; T[5][4].xh=80 ; T[5][5].nm="战车";T[5][5].zdl= 240 ;T[5][5].hp= 340 ; T[5][5].sd= 3 ; T[5][5].xh= 120 ; T[6][1].nm="野骑兵";T[6][1].zdl= 10 ;T[6][1].hp= 50 ; T[6][1].sd= 3 ; T[6][1].xh= 29 ; T[6][2].nm="骑手";T[6][2].zdl= 30 ;T[6][2].hp= 90 ; T[6][2].sd= 3 ; T[6][2].xh= 38 ; T[6][3].nm="弓骑兵";T[6][3].zdl= 60 ;T[6][3].hp= 100 ; T[6][3].sd= 3 ; T[6][3].xh= 55 ; T[6][4].nm="火器骑兵";T[6][4].zdl= 110 ;T[6][4].hp= 200 ; T[6][4].sd= 6 ; T[6][4].xh= 68 ; T[6][5].nm="战车";T[6][5].zdl= 200 ;T[6][5].hp= 330 ; T[6][5].sd= 6 ; T[6][5].xh= 110 ; for(int i=1;i<=25;i++) yfa[i][1]=yfi[i][1]=yft[i][0]=1; int j; cs[1].nm=" 蓟 ";cs[1].gj= 18 ;cs[1].ic= 1 ; cs[1].rk= 40 ; cs[1].rkzz=1 ;cs[1].kj= 0 ;cs[1].hp= 1000 ; cs[2].nm=" 姑苏 ";cs[2].gj= 17;cs[2].ic= 1 ; cs[2].rk= 50 ; cs[2].rkzz=1 ;cs[2].kj= 1 ;cs[2].hp= 1000 ; cs[3].nm=" 南海郡 ";cs[3].gj=17 ;cs[3].ic= 1 ; cs[3].rk= 50 ; cs[3].rkzz=1 ;cs[3].kj= 0 ;cs[3].hp= 1000 ; cs[4].nm=" 咸阳 ";cs[4].gj= 1 ;cs[4].ic= 3 ; cs[4].rk= 25 ; cs[4].rkzz=1 ;cs[4].kj= 1 ;cs[4].hp= 1000 ; cs[5].nm=" 成都 ";cs[5].gj= 15 ;cs[5].ic= 1 ; cs[5].rk= 50 ; cs[5].rkzz=1 ;cs[5].kj= 1 ;cs[5].hp= 1000 ; cs[6].nm=" 皇都 ";cs[6].gj= 14 ;cs[6].ic= 1 ; cs[6].rk= 25 ; cs[6].rkzz=1 ;cs[6].kj= 1 ;cs[6].hp= 1000 ; cs[7].nm="单于王庭";cs[7].gj= 14 ;cs[7].ic= 3 ; cs[7].rk= 10 ; cs[7].rkzz=1 ;cs[7].kj= 1 ;cs[7].hp= 1000 ; cs[8].nm=" 无人区 ";cs[8].gj= 0 ;cs[8].ic= 1 ; cs[8].rk= 40 ; cs[8].rkzz=1 ;cs[8].kj= 1 ;cs[8].hp= 1000 ; cs[9].nm=" 无人区 ";cs[9].gj= 0 ;cs[9].ic= 1 ; cs[9].rk= 25 ; cs[9].rkzz=1 ;cs[9].kj= 1 ;cs[9].hp= 1000; cs[10].nm=" 无人区 ";cs[10].gj= 0 ;cs[10].ic= 1 ; cs[10].rk= 20 ; cs[10].rkzz=1 ;cs[10].kj= 1 ;cs[10].hp= 1000 ; cs[11].nm=" 无人区 ";cs[11].gj= 0 ;cs[11].ic= 1 ; cs[11].rk= 20 ; cs[11].rkzz=1 ;cs[11].kj= 1 ;cs[11].hp= 1000 ; cs[12].nm=" 无人区 ";cs[12].gj= 0;cs[12].ic= 1 ; cs[12].rk= 25 ; cs[12].rkzz=1 ;cs[12].kj= 1 ;cs[12].hp= 1000 ; cs[13].nm=" 开城 ";cs[13].gj= 8 ;cs[13].ic= 1 ; cs[13].rk= 10 ; cs[13].rkzz=1 ;cs[13].kj= 1 ;cs[13].hp= 1000 ; cs[14].nm=" 奈良 ";cs[14].gj= 3 ;cs[14].ic= 1 ; cs[14].rk= 40 ; cs[14].rkzz=1 ;cs[14].kj= 1 ;cs[14].hp= 1000 ; cs[15].nm=" 京都 ";cs[15].gj= 3;cs[15].ic= 2 ; cs[15].rk= 30 ; cs[15].rkzz=1 ;cs[15].kj= 1 ;cs[15].hp= 1000 ; cs[16].nm=" 华沙 ";cs[16].gj= 2 ;cs[16].ic= 1 ; cs[16].rk= 20 ; cs[16].rkzz=1 ;cs[16].kj= 1 ;cs[16].hp= 1000 ; cs[17].nm=" 波兹南 ";cs[17].gj= 2 ;cs[17].ic= 1 ; cs[17].rk= 10 ; cs[17].rkzz=1 ;cs[17].kj= 1 ;cs[17].hp= 1000 ; cs[18].nm=" 柏林 ";cs[18].gj= 10 ;cs[18].ic= 1 ; cs[18].rk= 70 ; cs[18].rkzz=1 ;cs[18].kj= 1 ;cs[18].hp= 100000 ; cs[19].nm="布达佩斯";cs[19].gj= 10 ;cs[19].ic= 1; cs[19].rk= 40 ; cs[19].rkzz=1 ;cs[19].kj= 1 ;cs[19].hp= 1000 ; cs[20].nm=" 慕尼黑 ";cs[20].gj= 10;cs[20].ic= 2 ; cs[20].rk= 60 ; cs[20].rkzz=1 ;cs[20].kj= 1 ;cs[20].hp= 100000 ; cs[21].nm=" 鲁尔 ";cs[21].gj= 10 ;cs[21].ic= 1 ; cs[21].rk= 60 ; cs[21].rkzz=1 ;cs[21].kj= 1 ;cs[21].hp= 100000 ; cs[22].nm=" 奥斯陆 ";cs[22].gj= 20 ;cs[22].ic=2 ; cs[22].rk= 15 ; cs[22].rkzz=1 ;cs[22].kj= 1 ;cs[22].hp= 1000 ; cs[23].nm=" 哥尔摩 ";cs[23].gj= 20 ;cs[23].ic= 1 ; cs[23].rk= 15 ; cs[23].rkzz=1 ;cs[23].kj= 1 ;cs[23].hp= 1000 ; cs[24].nm="哥本哈根";cs[24].gj= 20 ;cs[24].ic= 1 ; cs[24].rk= 10 ; cs[24].rkzz=1 ;cs[24].kj= 1 ;cs[24].hp= 1000 ; cs[25].nm="赫尔辛基";cs[25].gj= 20 ;cs[25].ic= 1 ; cs[25].rk= 17 ; cs[25].rkzz=1 ;cs[25].kj= 1 ;cs[25].hp= 100 ; cs[26].nm=" 米兰 ";cs[26].gj= 9;cs[26].ic= 1 ; cs[26].rk= 15; cs[26].rkzz=1 ;cs[26].kj= 1;cs[26].hp= 1000 ; cs[27].nm=" 罗马 ";cs[27].gj= 9 ;cs[27].ic= 4 ; cs[27].rk= 20 ; cs[27].rkzz=1 ;cs[27].kj= 1 ;cs[27].hp= 1000 ; cs[28].nm=" 突尼斯 ";cs[28].gj= 12 ;cs[28].ic= 2 ; cs[28].rk= 5 ; cs[28].rkzz=1 ;cs[28].kj= 1 ;cs[28].hp= 1000 ; cs[29].nm=" 斯特丹 ";cs[29].gj= 10 ;cs[29].ic= 1 ; cs[29].rk= 25 ; cs[29].rkzz=1 ;cs[29].kj= 1 ;cs[29].hp= 1000 ; cs[30].nm=" 巴黎 ";cs[30].gj= 22 ;cs[30].ic= 2 ; cs[30].rk= 30 ; cs[30].rkzz=1 ;cs[30].kj= 1 ;cs[30].hp= 1000 ; cs[31].nm=" 里昂 ";cs[31].gj= 22 ;cs[31].ic= 1 ; cs[31].rk= 20 ; cs[31].rkzz=1 ;cs[31].kj= 1 ;cs[31].hp= 1000 ; cs[32].nm="南撒哈拉";cs[32].gj= 12 ;cs[32].ic= 1 ; cs[32].rk= 1 ; cs[32].rkzz=1 ;cs[32].kj= 1;cs[32].hp= 1000 ; cs[33].nm=" 升龙 ";cs[33].gj= 16 ;cs[33].ic= 1 ; cs[33].rk= 2 ; cs[33].rkzz=1 ;cs[33].kj= 1 ;cs[33].hp= 1000 ; cs[34].nm=" 伦敦 ";cs[34].gj= 11 ;cs[34].ic= 1 ; cs[34].rk= 25 ; cs[34].rkzz=1 ;cs[34].kj= 1 ;cs[34].hp= 50000 ; cs[35].nm="曼彻斯特";cs[35].gj= 11;cs[35].ic= 1 ; cs[35].rk= 20 ; cs[35].rkzz=1 ;cs[35].kj= 1 ;cs[35].hp= 1000 ; cs[36].nm=" 埃及 ";cs[36].gj= 5 ;cs[36].ic= 1 ; cs[36].rk= 10 ; cs[36].rkzz=1 ;cs[36].kj= 1 ;cs[36].hp= 1000 ; cs[37].nm=" 新加坡 ";cs[37].gj= 0 ;cs[37].ic= 1 ; cs[37].rk= 5 ; cs[37].rkzz=1 ;cs[37].kj= 1 ;cs[37].hp= 1000; cs[38].nm=" 无人区 ";cs[38].gj= 0 ;cs[38].ic= 1 ; cs[38].rk= 25 ; cs[38].rkzz=1 ;cs[38].kj= 1 ;cs[38].hp= 1000; cs[39].nm=" 德里 ";cs[39].gj= 6 ;cs[39].ic= 1 ; cs[39].rk= 30 ; cs[39].rkzz=1 ;cs[39].kj= 1;cs[39].hp= 1000 ; cs[40].nm=" 孟买 ";cs[40].gj= 6 ;cs[40].ic= 1 ; cs[40].rk= 25 ; cs[40].rkzz=1 ;cs[40].kj= 1;cs[40].hp= 1000; cs[41].nm="巴塞罗那";cs[41].gj= 23;cs[41].ic= 1 ; cs[41].rk= 15 ; cs[41].rkzz=1 ;cs[41].kj= 1;cs[41].hp= 1000; cs[42].nm=" 马德里 ";cs[42].gj= 23 ;cs[42].ic= 1 ; cs[42].rk= 20 ; cs[42].rkzz=1 ;cs[42].kj= 1;cs[42].hp= 1000; cs[43].nm=" 派拉 ";cs[43].gj= 7 ;cs[43].ic= 4 ; cs[43].rk= 30 ; cs[43].rkzz=1 ;cs[43].kj= 1 ;cs[43].hp= 1000 ; cs[44].nm=" 勒斯特 ";cs[44].gj= 7 ;cs[44].ic= 1 ; cs[44].rk= 20 ; cs[44].rkzz=1 ;cs[44].kj= 1 ;cs[44].hp= 1000 ; cs[45].nm=" 雅典 ";cs[45].gj= 4 ;cs[45].ic= 3 ; cs[45].rk= 15 ; cs[45].rkzz=1 ;cs[45].kj= 1 ;cs[45].hp= 1000 ; cs[46].nm="君士坦丁堡";cs[46].gj= 5 ;cs[46].ic= 2 ; cs[46].rk= 25 ; cs[46].rkzz=1 ;cs[46].kj= 1;cs[46].hp= 1000; cs[47].nm=" 巴格达 ";cs[47].gj= 5 ;cs[47].ic= 1 ; cs[47].rk= 25 ; cs[47].rkzz=1 ;cs[47].kj= 1 ;cs[47].hp= 1000; cs[48].nm="巴比伦城";cs[48].gj= 5 ;cs[48].ic= 3 ; cs[48].rk= 20 ; cs[48].rkzz=1 ;cs[48].kj= 1 ;cs[48].hp= 1000; cs[49].nm=" 无人区 ";cs[49].gj= 0 ;cs[49].ic= 1 ; cs[49].rk= 2 ; cs[49].rkzz=1 ;cs[49].kj= 1 ;cs[49].hp= 1000; cs[50].nm=" 无人区 ";cs[50].gj= 0 ;cs[50].ic= 1 ; cs[50].rk= 5 ; cs[50].rkzz=1 ;cs[50].kj= 1 ;cs[50].hp= 1000; cs[51].nm=" 无人区 ";cs[51].gj= 0 ;cs[51].ic= 1 ; cs[51].rk= 0 ; cs[51].rkzz=1 ;cs[51].kj= 1 ;cs[51].hp= 1000; cs[52].nm=" 无人区 ";cs[52].gj= 0 ;cs[52].ic= 1 ; cs[52].rk= 15 ; cs[52].rkzz=1 ;cs[52].kj= 1 ;cs[52].hp= 1000; cs[53].nm=" 无人区 ";cs[53].gj= 0;cs[53].ic= 1 ; cs[53].rk= 25 ; cs[53].rkzz=1 ;cs[53].kj= 1 ;cs[53].hp= 1000 ; cs[54].nm=" 无人区 ";cs[54].gj= 0 ;cs[54].ic= 1 ; cs[54].rk= 35 ; cs[54].rkzz=1 ;cs[54].kj= 1 ;cs[54].hp= 1000; cs[55].nm=" 尤卡坦 ";cs[55].gj= 13 ;cs[55].ic= 1 ; cs[55].rk= 10 ; cs[55].rkzz=1 ;cs[55].kj= 1 ;cs[55].hp= 1000; cs[56].nm=" 无人区 ";cs[56].gj= 0 ;cs[56].ic= 1 ; cs[56].rk= 20 ; cs[56].rkzz=1 ;cs[56].kj= 1 ;cs[56].hp= 1001; cs[57].nm=" 无人区 ";cs[57].gj= 0 ;cs[57].ic= 1 ; cs[57].rk= 50 ; cs[57].rkzz=1 ;cs[57].kj= 1 ;cs[57].hp= 1000; cs[58].nm=" 临淄 ";cs[58].gj= 19 ;cs[58].ic= 2 ; cs[58].rk= 20 ; cs[58].rkzz=1 ;cs[58].kj= 1 ;cs[58].hp= 1000 ; lt[1][2]=lt[2][1]= 1 ; lt[1][4]=lt[4][1]= 1 ; lt[1][6]=lt[6][1]= 1 ; lt[1][13]=lt[13][1]= 1 ; lt[2][3]=lt[3][2]= 1 ; lt[2][4]=lt[4][2]= 1 ; lt[2][51]=lt[51][2]= 1 ; lt[3][4]=lt[4][3]= 1 ; lt[3][5]=lt[5][3]= 1 ; lt[3][33]=lt[33][3]= 1 ; lt[3][38]=lt[38][3]= 1 ; lt[3][51]=lt[51][3]= 1 ; lt[4][5]=lt[5][4]= 1 ; lt[4][8]=lt[8][4]= 1 ; lt[4][47]=lt[47][4]= 1 ; lt[5][38]=lt[38][5]= 1 ; lt[5][39]=lt[39][5]= 1 ; lt[5][47]=lt[47][5]= 1 ; lt[6][7]=lt[7][6]= 1 ; lt[6][13]=lt[13][6]= 1 ; lt[7][8]=lt[8][7]=1; lt[7][13]=lt[13][7]= 1 ; lt[7][57]=lt[57][7]= 1 ; lt[8][9]=lt[9][8]= 1 ; lt[8][10]=lt[10][8]= 1 ; lt[8][12]=lt[12][8]= 1 ; lt[9][10]=lt[10][9]= 1 ; lt[9][11]=lt[11][9]= 1 ; lt[9][25]=lt[25][9]= 1 ; lt[10][11]=lt[11][10]= 1 ; lt[10][12]=lt[12][10]= 1 ; lt[11][16]=lt[16][11]= 1 ; lt[11][44]=lt[44][11]= 1 ; lt[12][46]=lt[46][12]= 1 ; lt[12][47]=lt[47][12]= 1 ; lt[13][14]=lt[14][13]= 1 ; lt[14][15]=lt[15][14]= 1 ; lt[15][50]=lt[50][15]= 1 ; lt[15][51]=lt[51][15]= 1 ; lt[16][17]=lt[17][16]= 1 ; lt[16][24]=lt[24][16]= 1 ; lt[16][44]=lt[44][16]= 1 ; lt[17][18]=lt[18][17]= 1 ; lt[17][19]=lt[19][17]= 1 ; lt[17][24]=lt[24][17]= 1 ; lt[18][19]=lt[19][18]= 1 ; lt[18][20]=lt[20][18]= 1 ; lt[18][21]=lt[21][18]= 1 ; lt[18][24]=lt[24][18]= 1 ; lt[19][20]=lt[20][19]= 1 ; lt[19][26]=lt[26][19]= 1 ; lt[19][43]=lt[43][19]= 1 ; lt[19][44]=lt[44][19]= 1 ; lt[20][26]=lt[26][20]= 1 ; lt[20][43]=lt[43][20]= 1 ; lt[21][24]=lt[24][21]= 1 ; lt[21][29]=lt[29][21]= 1 ; lt[21][30]=lt[30][21]= 1 ; lt[22][23]=lt[23][22]= 1 ; lt[23][24]=lt[24][23]= 1 ; lt[23][25]=lt[25][23]= 1 ; lt[24][29]=lt[29][24]= 1 ; lt[26][27]=lt[27][26]= 1 ; lt[26][31]=lt[31][26]= 1 ; lt[26][43]=lt[43][26]= 1 ; lt[27][28]=lt[28][27]= 1 ; lt[28][32]=lt[32][28]= 1 ; lt[28][36]=lt[36][28]= 1 ; lt[29][30]=lt[30][29]= 1 ; lt[30][31]=lt[31][30]= 1 ; lt[30][34]=lt[34][30]= 1 ; lt[31][41]=lt[41][31]= 1 ; lt[31][42]=lt[42][31]= 1 ; lt[33][37]=lt[37][33]= 1 ; lt[33][38]=lt[38][33]= 1 ; lt[33][51]=lt[51][33]= 1 ; lt[34][35]=lt[35][34]= 1 ; lt[37][50]=lt[50][37]= 1 ; lt[38][39]=lt[39][38]= 1 ; lt[39][40]=lt[40][39]= 1 ; lt[39][47]=lt[47][39]= 1 ; lt[40][47]=lt[47][40]= 1 ; lt[40][48]=lt[48][40]= 1 ; lt[41][42]=lt[42][41]= 1 ; lt[43][44]=lt[44][43]= 1 ; lt[43][45]=lt[45][43]= 1 ; lt[44][45]=lt[45][44]= 1 ; lt[45][46]=lt[46][45]= 1 ; lt[46][47]=lt[47][46]= 1 ;lt[48][47]=lt[47][48]= 1 ; lt[49][50]=lt[50][49]= 1 ; lt[50][51]=lt[51][50]= 1 ; lt[52][55]=lt[55][52]= 1 ; lt[52][57]=lt[57][52]= 1 ; lt[53][54]=lt[54][53]= 1 ; lt[53][56]=lt[56][53]= 1 ; lt[54][55]=lt[55][54]= 1 ; lt[56][57]=lt[57][56]= 1 ; lt[14][52]=lt[52][14]=1; lt[53][30]=lt[30][53]=1; lt[46][36]=lt[36][46]=1; lt[58][1]=lt[1][58]=1; for(i=1;i<=60;i++) for(j=1;j<=60;j++) { zdl[i][j]=lt[i][j];if(zdl[i][j]==0)zdl[i][j]=9999999; } g2j[0]=6; for(i=1;i<=60;i++) if(cs[i].gj==0) { for(j=1;j<=500;j++) ++dwcnt,v[i].push_back(dwcnt),dw[dwcnt].zl=1,dw[dwcnt].zl=1,dw[dwcnt].hp=30,dw[dwcnt].xh=1 ; } for(i=1;i<=60;i++) for(j=1;j<=60;j++) for(int k=1;k<=60;k++) { zdl[j][k]=min(zdl[j][k],zdl[j][i]+zdl[i][k]+1); } printf(" 选择国家: \n\n\n 1、%s\n\n\n 2、%s\n\n\n 3、%s\n\n\n 4、%s\n\n\n 5、%s\n\n\n 6、%s \n\n\n 7、%s\n\n\n 8、%s \n\n\n 9、%s\n\n\n 10、%s\n\n\n 11、%s\n\n\n 12、%s\n\n\n 13、%s\n\n\n 14、%s\n\n\n 15、%s\n\n\n 16、%s\n\n\n 17、%s\n\n\n 18、%s\n\n\n 19、%s\n\n\n 20、%s\n\n\n 21、%s\n\n\n 22、%s\n\n\n 23、%s\n\n\n 24、%s\n\n\n 25、%s",gjm[1].c_str(),gjm[2].c_str(),gjm[3].c_str(),gjm[4].c_str(),gjm[5].c_str(),gjm[6].c_str(),gjm[7].c_str(),gjm[8].c_str(),gjm[9].c_str(),gjm[10].c_str(),gjm[11].c_str(),gjm[12].c_str(),gjm[13].c_str(),gjm[14].c_str(),gjm[15].c_str(),gjm[16].c_str(),gjm[17].c_str(),gjm[18].c_str(),gjm[19].c_str(),gjm[20].c_str(),gjm[21].c_str(),gjm[22].c_str(),gjm[23].c_str(),gjm[24].c_str(),gjm[25].c_str()); cin>>xzgj; fstream fin("sjdt2.txt"); for(i=1;i<=12;i++) { for(j=1;j<=37;j++)fin>>tu[i][j]; } fin.close(); yx(); } void shuchu() { int i,j; for(i=1;i<=12;i++) { for(j=1;j<=37;j++) { if(tu[i][j]==0) printf(" "); else {tys(11); if(cs[tu[i][j]].gj==1)tys(0); if(cs[tu[i][j]].gj==xzgj)tys(1); if(cs[tu[i][j]].gj==5)tys(7); if(cs[tu[i][j]].gj==6)tys(10); if(cs[tu[i][j]].gj==24)tys(4); if(cs[tu[i][j]].gj==9)tys(2); if(cs[tu[i][j]].gj==7)tys(6); if(cs[tu[i][j]].gj==10)tys(3); if(cs[tu[i][j]].gj==14)tys(8); if(cs[tu[i][j]].gj==11)tys(9); if(cs[tu[i][j]].gj==3)tys(5); cout<<cs[tu[i][j]].nm; } } cout<<endl<<endl; } tys(11); } int ezjieshu; void shj() { int i,j,k; X=1; Y=1000; sj2=rand()%(Y-X+1)+X; if(sj2==50&&nian>1000) { X=1; Y=60; sj2=rand()%(Y-X+1)+X; if(cs[sj2].gj!=0) { system("CLS"); printf("\n\n\n %s 发生工业革命!",cs[sj2].nm.c_str()); cs[sj2].ic+=3; Sleep(2000); } } if(sj2<=30&&nian>=1700) { while(1) { X=1; Y=25; sj1=rand()%(Y-X+1)+X; int nn=sj1; X=1; Y=25; sj3=rand()%(Y-X+1)+X; int mm=sj3; if(!sile[mm]&&!sile[nn]&&mm!=nn) { system("CLS"); printf(" \n\n\n %s 和 %s 宣战 !",gjm[nn].c_str(),gjm[mm].c_str()); zz[nn][mm]=zz[mm][nn]=1; Sleep(2000); break; } } } if(fs[1]==0) { system("CLS"); printf("\n\n\n 齐、燕、楚 一起抗击 秦!"); zz[1][17]=zz[17][1]=zz[1][18]=zz[18][1]=zz[1][19]=zz[19][1]=1; for(i=1;i<=dwcnt;i++) if(dw[i].gj==1)dw[i].hp*=7; Sleep(2000); fs[1]=1; } if(nian>=-220&&fs[2]==0) { int o; int cc=0; if(sile[1]!=1)o=1,++cc; if(sile[17]!=1)o=17,++cc; if(sile[18]!=1)o=18,++cc; if(sile[19]!=1)o=19,++cc; if(cc==1) { if(o==xzgj) { system("CLS"); printf("\n\n\n 是否进入 汉 ?"); printf("\n\n 1、是 2、否"); char op; scanf("%c",&op); while(op!='1'&&op!='2') scanf("%c",&op); if(op=='1') { gjm[o]="汉"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)cs[i].hp=cs[i].hp*4/3; for(i=1;i<=60;i++) if(cs[i].gj==o)cs[i].ic+=1; } }else { system("CLS"); printf("\n\n\n 中国 进入 汉朝 !"); gjm[o]="汉"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp=dw[i].hp*4/3; for(i=1;i<=60;i++) if(cs[i].gj==o)cs[i].ic+=1; Sleep(2000); } } fs[2]=1; } if(nian==618&&fs[3]==0) { int o; if(sile[1]!=1)o=1; if(sile[17]!=1)o=17; if(sile[18]!=1)o=18; if(sile[19]!=1)o=19; if(o==xzgj) { system("CLS"); printf("\n\n\n 是否进入 唐 ?"); printf("\n\n 1、是 2、否"); char op; scanf("%c",&op); while(op!='1'&&op!='2') scanf("%c",&op); if(op=='1') { gjm[o]="唐"; cs[4].nm="长安"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp=cs[i].hp*10/9; for(i=1;i<=60;i++) if(cs[i].gj==o)cs[i].kj+=1; } }else { system("CLS"); printf("\n\n\n 中国 进入 唐朝 !"); Sleep(2000); gjm[o]="唐"; cs[4].nm="长安"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp=cs[i].hp*10/9; for(i=1;i<=60;i++) if(cs[i].gj==o)cs[i].kj+=1; } fs[3]=1; } if(nian==1271&&fs[4]==0&&sile[14]==0) { int o; o=14; if(o==xzgj) { system("CLS"); printf("\n\n\n 是否进入 元 ?"); printf("\n\n 1、是 2、否"); char op; scanf("%c",&op); while(op!='1'&&op!='2') scanf("%c",&op); if(op=='1') { gjm[o]="元"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp*=3; } }else { system("CLS"); printf("\n\n\n %s 改国号为 元 !",gjm[o].c_str()); Sleep(2000); gjm[o]="元"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp*=2; } fs[4]=1; } if(nian==1000&&fs[5]==0&&sile[2]==0) { int o; o=2; gjm[2]="波兰王国"; system("CLS"); printf("\n\n\n 东斯拉夫人 建国 波兰?"); Sleep(2000); gjm[o]="波兰"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp*=3; fs[5]=1; } if(nian==800&&fs[6]==0) { int o; o=21; sile[21]=0; system("CLS"); printf("\n\n\n 基辅罗斯 建立 定都 基辅 "); Sleep(2000); cs[8].nm="莫斯科"; cs[16].nm="基辅";cs[8].gj=21; cs[16].gj=21; g2j[21]=2; for(i=0;i<v[8].size();i++) dw[v[8][i]].gj=21; for(i=0;i<v[16].size();i++) dw[v[16][i]].gj=21; fs[6]=1; } if(nian==1200&&fs[8]==0&&sile[21]==0) { int o; o=21; system("CLS"); printf("\n\n\n 基辅罗斯 分裂 莫斯科公国 建立 "); Sleep(2000); gjm[21]="莫斯科公国"; fs[8]=1; } if(nian==1190&&fs[7]==0&&sile[14]==0) { int o; o=14; if(o==xzgj) { system("CLS"); printf("\n\n\n 是否进入 蒙古汗国 ?"); printf("\n\n 1、是 2、否"); char op; scanf("%c",&op); while(op!='1'&&op!='2') scanf("%c",&op); if(op=='1') { gjm[o]="蒙古汗国"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp*=3; yft[14][1]=yft[14][2]=yft[14][3]=1; cs[7].rk+=900; for(i=1;i<=200;i++) { scdw o; o.lx=3; o.xh=3; o.ys=3; sc[7].push(o); } } }else { system("CLS"); printf("\n\n\n %s 改国号为 蒙古汗国 !",gjm[o].c_str()); Sleep(2000); gjm[o]="蒙古汗国"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==o)dw[i].hp*=3; yft[14][1]=yft[14][2]=yft[14][3]=1; cs[7].rk+=900; for(i=1;i<=200;i++) { scdw o; o.lx=3; o.xh=3; o.ys=3; sc[7].push(o); } } fs[7]=1; } if(nian==1700&&fs[9]==0&&sile[21]==0) { int o; o=21; system("CLS"); printf("\n\n\n 俄罗斯帝国 建立 "); Sleep(2000); gjm[21]="俄罗斯帝国"; fs[9]=1; } if(nian==1500&&fs[10]==0&&sile[11]==0) { int o; o=11; system("CLS"); printf("\n\n\n 英格兰王国 建立 "); Sleep(2000); gjm[11]="英格兰王国"; fs[10]=1; } if(nian>=450&&fs[11]==0&&cs[30].gj==10&&cs[18].gj==10&&sile[10]==0) { int o; o=10; system("CLS"); printf("\n\n\n 法兰克王国 建立 "); Sleep(2000); gjm[10]="法兰克王国"; fs[11]=1; } if(nian==1492&&fs[12]==0&&sile[23]==0) { int o; o=23; system("CLS"); printf("\n\n\n 西班牙王国 建立 "); Sleep(2000); gjm[23]="西班牙王国"; fs[12]=1; } if(nian==816&&fs[13]==0&&sile[10]==0) { int o; o=23; sile[24]=0; system("CLS"); printf("\n\n\n 法兰克王国 分裂,法兰西王国 , 神圣罗马帝国 建立 "); Sleep(2000); gjm[10]="法兰西王国"; cs[18].gj=24; cs[20].gj=24;cs[21].gj=24; for(i=0;i<v[18].size();i++) dw[v[18][i]].gj=24; for(i=0;i<v[20].size();i++) dw[v[20][i]].gj=24; for(i=0;i<v[21].size();i++) dw[v[21][i]].gj=24; fs[13]=1; } if(nian==400&&fs[14]==0&&sile[3]==0) { int o; o=23; system("CLS"); printf("\n\n\n 大和国 建立 "); Sleep(2000); gjm[3]="大和国"; fs[14]=1; } if(nian==640&&fs[15]==0&&sile[3]==0) { int o; o=23; system("CLS"); printf("\n\n\n 大和 改国号为 日本 "); Sleep(2000); gjm[3]="日本"; fs[15]=1; } if(fs[16]==0) { system("CLS"); printf("\n\n\n 亚历山大大帝 开始征服战争!"); zz[4][7]=zz[7][4]=zz[5][7]=zz[7][5]=zz[7][6]=zz[6][7]=zz[7][1]=zz[1][7]=zz[7][19]=zz[19][7]=zz[7][18]=zz[18][7]=zz[7][17]=zz[17][7]=1; for(i=1;i<=dwcnt;i++) if(dw[i].gj==7)dw[i].hp*=2; Sleep(2000); fs[16]=1; } if(nian==-27&&fs[17]==0&&sile[9]==0) { int o; o=23; system("CLS"); printf("\n\n\n 罗马帝国 建立"); Sleep(2000); gjm[9]="罗马帝国"; for(i=1;i<=dwcnt;i++) if(dw[i].gj==9)dw[i].hp*=4; fs[17]=1; } if(fs[18]==0&&nian==-200&&sile[9]==0&&sile[12]==0) { system("CLS"); printf("\n\n\n 罗马共和国 和 迦太基 宣战,布匿战争开始!"); zz[9][12]=zz[12][9]=1; for(i=1;i<=dwcnt;i++) if(dw[i].gj==9)dw[i].hp*=1.5; Sleep(2000); fs[18]=1; } if(fs[19]==0&&nian==-19&&sile[9]==0) { system("CLS"); printf("\n\n\n 罗马帝国 开始征服战争!"); zz[9][4]=zz[4][9]=zz[9][7]=zz[7][9]=zz[5][9]=zz[9][5]=zz[9][11]=zz[11][9]=zz[9][1]=zz[1][9]=zz[9][19]=zz[19][9]=zz[9][18]=zz[18][9]=zz[9][17]=zz[17][9]=1; Sleep(2000); fs[19]=1; } if(fs[24]==0&&nian==80&&sile[9]==0) { system("CLS"); printf("\n\n\n 罗马帝国 受到基督教冲击!"); for(i=1;i<=dwcnt;i++)if(dw[i].gj==9)dw[i].hp/=30; Sleep(2000); fs[24]=1; } if(fs[23]==0&&nian==1230&&sile[14]==0) { system("CLS"); printf("\n\n\n 蒙古汗国 开始征服战争!"); zz[14][2]=zz[2][14]=zz[14][3]=zz[3][14]=zz[14][8]=zz[8][14]=zz[14][10]=zz[10][14]=zz[14][6]=zz[6][14]=zz[14][1]=zz[1][14]=zz[14][19]=zz[19][14]=zz[14][18]=zz[18][14]=zz[14][17]=zz[17][14]=zz[14][9]=zz[9][14]=1; for(i=1;i<=dwcnt;i++) if(dw[i].gj==1)dw[i].hp*=100; Sleep(2000); fs[23]=1; } if(fs[19]&&fs[20]==0&&nian==395&&sile[9]==0) { int o; o=23; system("CLS"); printf("\n\n\n 罗马帝国 分裂,拜占庭帝国 , 西罗马帝国 建立 "); Sleep(2000); gjm[9]="西罗马帝国"; if(cs[46].gj==9) cs[46].gj=25; sile[25]=0; if(cs[45].gj==9) cs[45].gj=25;if(cs[44].gj==9)cs[44].gj=25; for(i=1;i<=dwcnt;i++)if(dw[i].gj==9)dw[i].hp/=30; zz[9][10]=zz[10][9]=1; zz[25][5]=zz[5][25]=1; for(i=0;i<v[44].size();i++) dw[v[44][i]].gj=25; for(i=0;i<v[45].size();i++) dw[v[45][i]].gj=25; for(i=0;i<v[46].size();i++) dw[v[46][i]].gj=25; fs[20]=1; } if(nian==1200&&fs[21]==0&&sile[5]==0) { int o; o=21; system("CLS"); printf("\n\n\n 奥斯曼帝国 建立 "); Sleep(2000); gjm[5] ="奥斯曼帝国"; cs[46].gj=5; cs[47].gj=5; cs[48].gj=5; for(i=0;i<v[46].size();i++) dw[v[46][i]].gj=5; for(i=0;i<v[47].size();i++) dw[v[47][i]].gj=5; for(i=0;i<v[48].size();i++) dw[v[48][i]].gj=5; fs[21]=1; } if(nian==640&&fs[22]==0&&sile[6]==0) { int o; o=23; system("CLS"); printf("\n\n\n 贵霜帝国 取代 孔雀王朝! "); Sleep(2000); gjm[6]="贵霜帝国"; fs[22]=1; } } void yx() { //电脑部署时间 int lll=xzgj; xzgj=0; for(int i=1;i<=100;i++) up(); xzgj=lll; for(int i=1;i<=10;i++) up(); nian=-300; yue=6; ri=1; for(int i=1;i<=60;i++)zz[i][0]=zz[0][i]=1; zz[10][22]=zz[22][10]=1; int xz,xzmbcs,sccs,xz2,xzdw,sl,xzcs,jgxz,n,xzjd; while(1) { if(nian>0)yue+=3;else yue-=3; if(nian==0)nian=1; if(yue>12) { nian++; yue=3; } if(yue==0) { nian++; yue=12; } shj(); while(1) { system("CLS");// cout<<endl<<v[53].size()<<" "<<v[18].size()<<" "<<v[19].size()<<" "<<v[11].size()<<" ";//<<v[15].size()<<" "<<v[13].size()<<" "<<v[6].size()<<" "<<v[1].size()<<" "<<" "<<v[2].size()<<" "<<v[3].size()<<" "<<v[4].size()<<" "<<v[5].size()<<endl; int i,ccc=0; printf("\n\n %d年 %d月 %d日\n\n\n\n\n",nian,yue,ri); shuchu(); printf("\n\n\n 1:科研\n\n 2:生产\n\n 3:军队\n\n 4、宣战\n\n 0、下一回合") ; op=getch();while(op<'0'&&op>9)op=getch();xz=op-'0'; if(xz==0)break; if(xz==1) {system("CLS"); printf(" 选择研发项目:"); printf("\n\n\n\n 1、步兵\n\n\n\n 2、火炮\n\n\n\n 3、坦克"); cin>>yffx[xzgj]; } if(xz==2) {system("CLS"); printf(" 选择生产城市:"); int dui[999],ii;dui[0]=0; for(ii=1;ii<=58;ii++) { if(cs[ii].gj==xzgj) { dui[++dui[0]]=ii; printf("\n\n\n %d:%s",dui[0],cs[ii].nm.c_str()); } } cin>>sccs;if(sccs==0)continue; sccs=dui[sccs]; printf("\n\n\n 城市名称:%s",cs[sccs].nm.c_str()); printf("\n\n 生产能力:%d",cs[sccs].ic ); printf("\n\n 可用人数:%d",cs[sccs].rk ); if(sc[sccs].front().lx==1)printf("\n\n 正在生产:%s",I[g2j[xzgj]][sc[sccs].front().xh].nm.c_str()); if(sc[sccs].front(). lx==2)printf("\n\n 正在生产:%s",A[g2j[xzgj]][sc[sccs].front().xh].nm.c_str()); if(sc[sccs].front().lx==3)printf("\n\n 正在生产:%s",T[g2j[xzgj]][sc[sccs].front().xh].nm.c_str()); if(sc[sccs].front().lx==8)printf("\n\n 正在生产:工厂"); if(sc[sccs].front().lx==9)printf("\n\n 正在生产:科研所"); printf("\n\n\n 1、清空队列"); printf("\n\n\n 2、生产单位"); printf("\n\n\n 0、返回"); op=getch();while(op<'0'&&op>9)op=getch();xz2=op-'0'; if(xz2==0)continue; if(xz2==1)while(!sc[sccs].empty())sc[sccs].pop(); if(xz2==2) { system("CLS"); printf("\n\n\n\n"); int jj,du[9999][2];du[0][0]=0; for(jj=1;jj<=5;jj++) if(yfi[xzgj][jj]==1) ++du[0][0],du[du[0][0]][0]=1,du[du[0][0]][1]=jj,printf("\n\n\n %d:%s 战斗力:%d HP:%d 消耗ic:%d\n",du[0][0],I[g2j[xzgj]][jj].nm.c_str(),I[g2j[xzgj]][jj].zdl,I[g2j[xzgj]][jj].hp,I[g2j[xzgj]][jj].xh); for(jj=1;jj<=5;jj++) if(yfa[xzgj][jj]==1) ++du[0][0],du[du[0][0]][0]=2,du[du[0][0]][1]=jj,printf("\n\n\n %d:%s 战斗力:%d HP:%d 消耗ic:%d\n",du[0][0],A[g2j[xzgj]][jj].nm.c_str(),A[g2j[xzgj]][jj].zdl,A[g2j[xzgj]][jj].hp,A[g2j[xzgj]][jj].xh); for(jj=1;jj<=5;jj++) if(yft[xzgj][jj]==1) ++du[0][0],du[du[0][0]][0]=3,du[du[0][0]][1]=jj,printf("\n\n\n %d:%s 战斗力:%d HP:%d 消耗ic:%d\n",du[0][0],T[g2j[xzgj]][jj].nm.c_str(),T[g2j[xzgj]][jj].zdl,T[g2j[xzgj]][jj].hp,T[g2j[xzgj]][jj].xh); ++du[0][0],du[du[0][0]][0]=8,du[du[0][0]][1]=0,printf("\n\n\n %d:增设工厂\n",du[0][0]); ++du[0][0],du[du[0][0]][0]=9,du[du[0][0]][1]=0,printf("\n\n\n %d:增设研究机构\n",du[0][0]); scanf("%d",&xzdw); printf("\n 输入要生产的数量:\n"); scanf("%d",&sl); for(int i=1;i<=sl;i++) { scdw o;o.lx=du[xzdw][0];o.xh=du[xzdw][1]; if(du[xzdw][0]==1)o.ys=I[g2j[xzgj]][du[xzdw][1]].xh; if(du[xzdw][0]==2)o.ys=A[g2j[xzgj]][du[xzdw][1]].xh; if(du[xzdw][0]==3)o.ys=T[g2j[xzgj]][du[xzdw][1]].xh; if(du[xzdw][0]==8)o.ys=100; if(du[xzdw][0]==9)o.ys=100; sc[sccs].push(o); } } } if(xz==3) {system("CLS");shuchu(); printf(" 选择城市:"); int dui[999],ii;dui[0]=0; for(ii=1;ii<=58;ii++) { if(cs[ii].gj==xzgj) { dui[++dui[0]]=ii; printf("\n\n\n %d:%s",dui[0],cs[ii].nm.c_str()); } } cin>>xzcs;if(xzcs==0)continue; xzcs=dui[xzcs]; dui[0]=0; for(ii=0;ii<v[xzcs].size();ii++) { int st=v[xzcs][ii]; if(dw[st].zl==1)printf("\n\n\n %s %d\n",I[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==2)printf("\n\n\n %s %d\n",A[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==3)printf("\n\n\n %s %d\n",T[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); } printf("\n\n 1、进攻"); printf("\n\n 2、移动"); printf("\n\n 0、返回"); op=getch();while(op<'0'&&op>9)op=getch(); jgxz=op-'0'; if(op==0)continue; if(jgxz==1) {system("CLS");shuchu(); printf(" 选择目标城市"); dui[0]=0; for(ii=1;ii<=90;ii++) { if(lt[xzcs][ii]&&zz[xzgj][cs[ii].gj]) { ++dui[0]; printf("\n\n\n %d、 %s ",dui[0],cs[ii].nm.c_str()); dui[dui[0]]= ii; } } printf("\n\n 0、返回"); scanf("%d",&xzmbcs); if(xzmbcs==0)continue; xzmbcs=dui[xzmbcs]; system("CLS");dui[0]=0; for(ii=0;ii<v[xzcs].size();ii++) { int st=v[xzcs][ii]; dui[++dui[0]]=st; if(dw[st].zl==1)printf("\n\n\n %d、%s %d\n",dui[0],I[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==2)printf("\n\n\n %d、%s %d\n",dui[0],A[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==3)printf("\n\n\n %d、%s %d\n",dui[0],T[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); } printf("\n\n 0、返回 1、继续"); scanf("%d",&n); if(n==0) continue; system("CLS"); dui[0]=0; for(ii=0;ii<v[xzcs].size();ii++) { int st=v[xzcs][ii]; dui[++dui[0]]=st; if(dw[st].zl==1)printf("\n\n\n %d、%s %d\n",dui[0],I[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==2)printf("\n\n\n %d、%s %d\n",dui[0],A[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==3)printf("\n\n\n %d、%s %d\n",dui[0],T[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); } printf("\n\n\n 选择要移动的单位区间(输入左端点,右端点)"); int l,r; scanf("%d%d",&l,&r); if(l<=0||r<=0||r>dui[0])continue; for(int ll=l;ll<=r;ll++) { xzjd=dui[ll]; //删除位置 vector<int>::iterator iter=find(v[xzcs].begin(),v[xzcs].end(),xzjd); v[xzcs].erase(iter); dw[xzjd].mb=xzmbcs; dw[xzjd].mbsj=10; } } if(jgxz==2) {system("CLS");shuchu(); printf(" 选择目标城市"); dui[0]=0; for(ii=1;ii<=90;ii++) { if(zdl[xzcs][ii]<=100&&cs[ii].gj==xzgj) { ++dui[0]; printf("\n\n\n %d、 %s ",dui[0],cs[ii].nm.c_str()); dui[dui[0]]=ii; } } printf("\n\n 0、返回"); scanf("%d",&xzmbcs); if(xzmbcs==0)continue; xzmbcs=dui[xzmbcs]; system("CLS");dui[0]=0; for(ii=0;ii<v[xzcs].size();ii++) { int st=v[xzcs][ii]; dui[++dui[0]]=st; if(dw[st].zl==1)printf("\n\n\n %d、%s %d\n",dui[0],I[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==2)printf("\n\n\n %d、%s %d\n",dui[0],A[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==3)printf("\n\n\n %d、%s %d\n",dui[0],T[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); } printf("\n\n 0、返回 1、继续"); scanf("%d",&n); if(n==0) continue; system("CLS"); dui[0]=0; for(ii=0;ii<v[xzcs].size();ii++) { int st=v[xzcs][ii]; dui[++dui[0]]=st; if(dw[st].zl==1)printf("\n\n\n %d、%s %d\n",dui[0],I[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==2)printf("\n\n\n %d、%s %d\n",dui[0],A[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); if(dw[st].zl==3)printf("\n\n\n %d、%s %d\n",dui[0],T[g2j[xzgj]][dw[st].xh].nm.c_str(),dw[st].hp); } printf("\n\n\n 选择要移动的单位区间(输入左端点,右端点)"); int l,r; scanf("%d%d",&l,&r); if(l<=0||r<=0||r>dui[0])continue; for(int ll=l;ll<=r;ll++) { xzjd=dui[ll]; //删除位置 vector<int>::iterator iter=find(v[xzcs].begin(),v[xzcs].end(),xzjd); v[xzcs].erase(iter); dw[xzjd].mb=xzmbcs; dw[xzjd].mbsj=10; } } } if(xz==4) { int i; system("CLS"); int dui[999];dui[0]=0; for(i=1;i<=22;i++) { if(!zz[xzgj][i]) { ++dui[0]; printf("\n\n %d、%s",dui[0],gjm[i].c_str()); dui[dui[0]]=i; } } scanf("%d",&xzcs); if(xzcs==0)continue; xzcs=dui[xzcs]; zz[xzgj][xzcs]=zz[xzcs][xzgj]=1; system("CLS"); printf("\n\n\n\n %s 和 %s 宣战!",gjm[xzgj].c_str(),gjm[xzcs].c_str()); Sleep(2000); } }up(); } } void up() {int i; //处理死亡国家 int css[99]; for(i=1;i<=50;i++)css[i]=0; for(i=1;i<=60;i++) { css[cs[i].gj]++;if(cs[i].hp<500&&cs[i].hp>0)cs[i].hp+=10; } for(i=1;i<=22;i++) { if(!sile[i]&&css[i]==0) { sile[i]=1; system("CLS"); printf("\n\n\n %s 战败!",gjm[i].c_str()); for(int j=1;j<=dwcnt;j++)if(dw[j].gj==i)dw[j].hp=-1; Sleep(3000); } } //处理转移 for(i=1;i<=dwcnt;i++) { if(dw[i].hp<=0)continue; if(dw[i].mbsj>0) { if(dw[i].zl==1) dw[i].mbsj-=I[g2j[dw[i].gj]][dw[i].xh].sd; if(dw[i].zl==2) dw[i].mbsj-=A[g2j[dw[i].gj]][dw[i].xh].sd; if(dw[i].zl==3) dw[i].mbsj-=T[g2j[dw[i].gj]][dw[i].xh].sd; } if(dw[i].mbsj<=0&&dw[i].mb!=0) { dw[i].mbsj=0; if(cs[dw[i].mb].gj==dw[i].gj) { //删一个,加一个 v[dw[i].mb].push_back(i); dw[i].mb=0; }else if(cs[dw[i].mb].hp<=0&&v[dw[i].mb].size()==0&&zz[dw[i].gj][cs[dw[i].mb].gj]) { cs[dw[i].mb].hp=100; cs[dw[i].mb].gj=dw[i].gj; cs[dw[i].mb].rk=10; v[dw[i].mb].push_back(i); system("CLS");printf("\n\n\n %s 占领了 %s !",gjm[dw[i].gj].c_str(),cs[dw[i].mb].nm.c_str()); Sleep(700);dw[i].mb=0; }else if(!zz[dw[i].gj][cs[dw[i].mb].gj]) { for(int k=1;k<=60;k++)if(cs[k].gj==dw[i].gj) { dw[i].mb=k; dw[i].mbsj=10; break; } } } } //处理科研 for(i=1;i<=25;i++) { int kynl=0; for(int j=1;j<=60;j++) if(cs[j].gj==i)kynl+=cs[j].kj; if(yffx[i]==1) { if(yfi[i][3]==0){yffy[i][1][3]-=kynl; if(yffy[i][1][3]<=0){yfi[i][3]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",I[g2j[i]][3].nm.c_str());Sleep(2900); } } } else if(yfi[i][4]==0){yffy[i][1][4]-=kynl; if(yffy[i][1][4]<=0){yfi[i][4]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",I[g2j[i]][4].nm.c_str());Sleep(2900); } } } else if(yfi[i][5]==0){yffy[i][1][5]-=kynl; if(yffy[i][1][5]<=0){yfi[i][5]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",I[g2j[i]][5].nm.c_str());Sleep(2900); } } } } if(yffx[i]==2) { if(yfa[i][2]==0){yffy[i][2][2]-=kynl; if(yffy[i][2][2]<=0){yfa[i][2]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",A[g2j[i]][2].nm.c_str());Sleep(2900); } } } else if(yfa[i][3]==0){yffy[i][2][3]-=kynl; if(yffy[i][2][3]<=0){yfa[i][3]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",A[g2j[i]][3].nm.c_str());Sleep(2900); } } } else if(yfa[i][4]==0){yffy[i][2][4]-=kynl; if(yffy[i][2][4]<=0){yfa[i][4]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",A[g2j[i]][4].nm.c_str());Sleep(2900); } } } else if(yfa[i][5]==0){yffy[2][2][5]-=kynl; if(yffy[i][2][5]<=0){yfa[i][5]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",A[g2j[i]][5].nm.c_str());Sleep(2900); } } } } if(yffx[i]==3) { if(yft[i][1]==0){yffy[i][3][1]-=kynl; if(yffy[i][3][1]<=0){yft[i][1]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",T[g2j[i]][1].nm.c_str());Sleep(2900); } } } else if(yft[i][2]==0){yffy[i][3][2]-=kynl; if(yffy[i][3][2]<=0){yft[i][2]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",T[g2j[i]][2].nm.c_str());Sleep(2900); } } } else if(yft[i][3]==0){yffy[i][3][3]-=kynl; if(yffy[i][3][3]<=0){yft[i][3]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",T[g2j[i]][3].nm.c_str());Sleep(2900); } } } else if(yft[i][4]==0){yffy[i][3][4]-=kynl; if(yffy[i][3][4]<=0){yft[i][4]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",T[g2j[i]][4].nm.c_str());Sleep(2900); } } } else if(yft[i][5]==0){yffy[i][3][5]-=kynl; if(yffy[3][3][5]<=0){yft[i][5]=1;if(i==xzgj){ system("CLS");printf(" %s 研发完成 !",T[g2j[i]][5].nm.c_str());Sleep(2900); } } } } } //处理生产/人口增长 for(i=1;i<=60;i++) { if(nian>-10&&cs[i].gj==9){if(yue==6)cs[i].rk+=1;} else cs[i].rk+=cs[i].rkzz; if(!sc[i].empty()&&cs[i].rk>=10) { if(i==14) { // cout<<sc[i].front().xh; } sc[i].front().ys-=cs[i].ic; if(sc[i].front().ys<=0) { // if(cs[i].gj==3) // { //cout<<i<<" "<<sc[i].front().lx; //Sleep(1000); // } if(sc[i].front().lx==8) { if(cs[i].rk>=100){ if(cs[i].gj==xzgj){system("CLS");printf("\n\n\n 工厂 于 %s 制造厂 生产完成 !",cs[i].nm.c_str()); Sleep(500); } cs[i].ic+=1;cs[i].rk-=100; sc[i].pop(); } }else if(sc[i].front().lx==9){ if(cs[i].rk>=50){ if(cs[i].gj==xzgj){system("CLS");printf("\n\n\n 科研所 于 %s 制造厂 生产完成 !",cs[i].nm.c_str()); Sleep(500); } cs[i].kj+=1;cs[i].rk-=50; sc[i].pop(); } }else { cs[i].rk-=10; dw[++dwcnt].gj=cs[i].gj; dw[dwcnt].zl=sc[i].front().lx; dw[dwcnt].xh=sc[i].front().xh; if(dw[dwcnt].zl==1){dw[dwcnt].hp=I[g2j[cs[i].gj]][dw[dwcnt].xh].hp; if(cs[i].gj==xzgj){system("CLS");printf("\n\n\n %s 于 %s 制造厂 生产完成 !",I[g2j[cs[i].gj]][dw[dwcnt].xh].nm.c_str(),cs[i].nm.c_str()); Sleep(500); } } if(dw[dwcnt].zl==2){dw[dwcnt].hp=A[g2j[cs[i].gj]][dw[dwcnt].xh].hp; if(cs[i].gj==xzgj){system("CLS");printf("\n\n\n %s 于 %s 制造厂 生产完成 !",A[g2j[cs[i].gj]][dw[dwcnt].xh].nm.c_str(),cs[i].nm.c_str()); Sleep(500); } } if(dw[dwcnt].zl==3){dw[dwcnt].hp=T[g2j[cs[i].gj]][dw[dwcnt].xh].hp; if(cs[i].gj==xzgj){system("CLS");printf("\n\n\n %s 于 %s 制造厂 生产完成 !",T[g2j[cs[i].gj]][dw[dwcnt].xh].nm.c_str(),cs[i].nm.c_str()); Sleep(500); } } v[i].push_back(dwcnt); sc[i].pop(); } } } } int X,Y,j,k,l; //AI for(i=1;i<=30;i++) { bool cyzz=0; if(sile[i]||i==xzgj)continue; int kyzz=0; X=1; Y=3; sj2=rand()%(Y-X+1)+X; yffx[i]=sj2; for(j=1;j<=30;j++) if(zz[j][i]==1&&sile[j]==0)cyzz=1; // if(i==21&&nian>=1943) // { // // cout<<"pp"; // // } for(j=1;j<=90;j++) { if(cs[j].gj!=i)continue; X=1; Y=100; sj1=rand()%(Y-X+1)+X; kyzz=0; for(k=1;k<=60;k++)if(lt[k][j]&&zz[cs[j].gj][cs[k].gj]&&(kyzz==0||cs[k].hp<cs[kyzz].hp))kyzz=k; if(kyzz==0) { for(k=1;k<=60;k++) { X=1; Y=100; sj1=rand()%(Y-X+1)+X; if(lt[k][j]==1&&cs[k].gj==i&&(sj1>50)&&v[j].size()>2) { //移动 int l,nn=v[j].size()-1; nn=nn/2; for(l=0;l<nn;l++) { int st=v[j][0]; // if(dw[st].mbsj!=0)continue; vector<int>::iterator iter=find(v[j].begin(),v[j].end(),st); v[j].erase(iter); dw[st].mb=k; dw[st].mbsj=10; } break; } } }else { if(sj1>35&&v[j].size()>=6&&((cs[kyzz].gj!=0)||(v[j].size()>500&&sj1==1))&&((i!=11)||(nian>600||nian<-20||sj1==1))&&((i!=14)||(nian>1230||sj1==2))&&(i!=10||(nian>400||nian<0||sj1==1))) { //进攻 int l,nn=v[j].size()-1; nn=nn*2/3; for(l=0;l<nn;l++) { int st=v[j][0]; if(dw[st].mb!=0)continue; vector<int>::iterator iter=find(v[j].begin(),v[j].end(),st); v[j].erase(iter); dw[st].mb=kyzz; dw[st].mbsj=10; } } } X=1; Y=100; sj3=rand()%(Y-X+1)+X; //生产 if(!sc[j].empty()||sj3>80)continue; X=1; Y=100; sj2=rand()%(Y-X+1)+X; if(sj2<2) { scdw o; o.lx=8; o.ys=100; sc[j].push(o); }else if(sj2<4) { scdw o; o.lx=9; o.xh=0;o.ys=100; sc[j].push(o); }else if(sj2<=25||(i==14&&sj2<=70)) { for(k=5;k>=1;k--) { if(yft[i][k]) { scdw o; o.lx=3; o.xh=k; o.ys=T[g2j[i]][k].xh; sc[j].push(o); } } }else if(sj2<=50) for(k=5;k>=1;k--) { if(yfa[i][k]) { scdw o; o.lx=2; o.xh=k; o.ys=A[g2j[i]][k].xh; sc[j].push(o); } } else for(k=5;k>=1;k--) { if(yfi[i][k]) { scdw o; o.lx=1; o.xh=k; o.ys=I[g2j[i]][k].xh; sc[j].push(o); } } } } //战争 for(i=1;i<=60;i++) lin[i].clear(); for(i=1;i<=dwcnt;i++) { if(dw[i].hp>0&&dw[i].mbsj<=0&&cs[dw[i].mb].gj!=dw[i].gj) { lin[dw[i].mb].push_back(i); } } for(i=1;i<=60;i++) { if(lin[i].size()>0) { system("CLS"); if(dw[lin[i][0]].gj==xzgj||cs[i].gj==xzgj) {printf("战争爆发!"),Sleep(500); printf("\n %s 发生冲突",cs[i].nm.c_str()); printf("\n\n %s:\n\n\n",gjm[dw[lin[i][0]].gj].c_str()); for(j=0;j<lin[i].size();j++) { if(dw[lin[i][j]].zl==1) printf(" %s ",I[g2j[dw[lin[i][j]].gj ]][dw[lin[i][j]].xh].nm.c_str() ); if(dw[lin[i][j]].zl==2) printf(" %s ",A[g2j[dw[lin[i][j]].gj ]][dw[lin[i][j]].xh].nm.c_str() ); if(dw[lin[i][j]].zl==3) printf(" %s ",T[g2j[dw[lin[i][j]].gj ]][dw[lin[i][j]].xh].nm.c_str() ); if(j%5==0)printf("\n\n"); } printf("\n\n %s:\n\n\n",gjm[cs[i].gj].c_str()); for(j=0;j<v[i].size();j++) { if(dw[v[i][j]].zl==1) printf(" %s ",I[g2j[dw[v[i][j]].gj ]][dw[v[i][j]].xh].nm.c_str() ); if(dw[v[i][j]].zl==2) printf(" %s ",A[g2j[dw[v[i][j]].gj ]][dw[v[i][j]].xh].nm.c_str() ); if(dw[v[i][j]].zl==3) printf(" %s ",T[g2j[dw[v[i][j]].gj ]][dw[v[i][j]].xh].nm.c_str() ); if(j%5==0)printf("\n\n"); } Sleep(1000); } for(j=0;j<lin[i].size();j++) { X=1; Y=5; sj3=rand()%(Y-X+1)+X; X=1; Y=100; sj1=rand()%(Y-X+1)+X; if(dw[lin[i][j]].zl==1) {if(cs[i].hp>0&&(sj1>=20||v[i].size()==0)){ cs[i].hp-=I[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl;continue;} if(v[i].size()==0)continue; bool sgl=1; for(k=0;k<v[i].size();k++)if(dw[v[i][k]].hp>0)sgl=0; if(sgl==1)continue; while(1) { X=0; Y=v[i].size()-1; sj3=rand()%(Y-X+1)+X; if(dw[v[i][sj3]].hp>0) { X=-I[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl/10; Y=I[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl/10; sj4=rand()%(Y-X+1)+X; dw[v[i][sj3]].hp-=I[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl+sj4; break; } } } if(dw[lin[i][j]].zl==2) {if(cs[i].hp>0&&(sj1>=20||v[i].size()==0)){ cs[i].hp-=A[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl;continue;} if(v[i].size()==0)continue; bool sgl=1; for(k=0;k<v[i].size();k++)if(dw[v[i][k]].hp>0)sgl=0; if(sgl==1)continue; while(1) { X=0; Y=v[i].size()-1; sj3=rand()%(Y-X+1)+X; if(dw[v[i][sj3]].hp>0) { X=-A[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl/10; Y=A[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl/10; sj4=rand()%(Y-X+1)+X; dw[v[i][sj3]].hp-=A[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl+sj4; break; } } } if(dw[lin[i][j]].zl==3) {if(cs[i].hp>0&&(sj1>=20||v[i].size()==0)){ cs[i].hp-=T[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl;continue;} if(v[i].size()==0)continue; bool sgl=1; for(k=0;k<v[i].size();k++)if(dw[v[i][k]].hp>0)sgl=0; if(sgl==1)continue; while(1) { X=0; Y=v[i].size()-1; sj3=rand()%(Y-X+1)+X; if(dw[v[i][sj3]].hp>0) { X=-T[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl/10; Y=T[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl/10; sj4=rand()%(Y-X+1)+X; dw[v[i][sj3]].hp-=T[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].zdl+sj4; break; } } } } for(j=0;j<v[i].size();j++) { if(dw[v[i][j]].zl==1) { if(lin[i].size()==0)continue; bool sgl=1; for(k=0;k<lin[i].size();k++)if(dw[lin[i][k]].hp>0)sgl=0; if(sgl==1)continue; while(1) { X=0; Y=lin[i].size()-1; sj3=rand()%(Y-X+1)+X; if(dw[lin[i][sj3]].hp>0) { X=-I[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl/10; Y=I[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl/10; sj4=rand()%(Y-X+1)+X; dw[lin[i][sj3]].hp-=I[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl+sj4; break; } } } if(dw[v[i][j]].zl==2) { if(lin[i].size()==0)continue; bool sgl=1; for(k=0;k<lin[i].size();k++)if(dw[lin[i][k]].hp>0)sgl=0; if(sgl==1)continue; while(1) { X=0; Y=lin[i].size()-1; sj3=rand()%(Y-X+1)+X; if(dw[lin[i][sj3]].hp>0) { X=-A[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl/10; Y=A[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl/10; sj4=rand()%(Y-X+1)+X; dw[lin[i][sj3]].hp-=A[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl+sj4; break; } } } if(dw[v[i][j]].zl==3) { if(lin[i].size()==0)continue; bool sgl=1; for(k=0;k<lin[i].size();k++)if(dw[lin[i][k]].hp>0)sgl=0; if(sgl==1)continue; while(1) { X=0; Y=lin[i].size()-1; sj3=rand()%(Y-X+1)+X; if(dw[lin[i][sj3]].hp>0) { X=-T[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl/10; Y=T[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl/10; sj4=rand()%(Y-X+1)+X; dw[lin[i][sj3]].hp-=T[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].zdl+sj4; break; } } } } for(j=0;j<lin[i].size();j++) { if(dw[lin[i][j]].hp<=0) { if(dw[lin[i][j]].gj==xzgj) { if(dw[lin[i][j]].zl==1)printf("\n 我方损失 %s !",I[g2j[xzgj]][dw[lin[i][j]].xh].nm.c_str()); if(dw[lin[i][j]].zl==2)printf("\n 我方损失 %s !",A[g2j[xzgj]][dw[lin[i][j]].xh].nm.c_str()); if(dw[lin[i][j]].zl==3)printf("\n 我方损失 %s !",T[g2j[xzgj]][dw[lin[i][j]].xh].nm.c_str()); Sleep(600); vector<int>::iterator iter=find(lin[i].begin(),lin[i].end(),lin[i][j]); //删除指定元素 lin[i].erase(iter);j=-1; } else if(cs[i].gj==xzgj) { if(dw[lin[i][j]].zl==1)printf("\n 对方损失 %s !",I[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].nm.c_str()); if(dw[lin[i][j]].zl==2)printf("\n 对方损失 %s !",A[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].nm.c_str()); if(dw[lin[i][j]].zl==3)printf("\n 对方损失 %s !",T[g2j[dw[lin[i][j]].gj]][dw[lin[i][j]].xh].nm.c_str()); Sleep(600); vector<int>::iterator iter=find(lin[i].begin(),lin[i].end(),lin[i][j]); //删除指定元素 lin[i].erase(iter); j=-1; } else { vector<int>::iterator iter=find(lin[i].begin(),lin[i].end(),lin[i][j]); //删除指定元素 lin[i].erase(iter);j=-1; } } } for(j=0;j<v[i].size();j++) { if(dw[v[i][j]].hp<=0) { if(dw[v[i][j]].gj==xzgj) { if(dw[v[i][j]].zl==1)printf("\n 我方损失 %s !",I[g2j[xzgj]][dw[v[i][j]].xh].nm.c_str()); if(dw[v[i][j]].zl==2)printf("\n 我方损失 %s !",A[g2j[xzgj]][dw[v[i][j]].xh].nm.c_str()); if(dw[v[i][j]].zl==3)printf("\n 我方损失 %s !",T[g2j[xzgj]][dw[v[i][j]].xh].nm.c_str()); Sleep(600); vector<int>::iterator iter=find(v[i].begin(),v[i].end(),v[i][j]); //删除指定元素 v[i].erase(iter);j=-1; } else if(dw[lin[i][0]].gj==xzgj) { if(dw[v[i][j]].zl==1)printf("\n 对方损失 %s !",I[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].nm.c_str()); if(dw[v[i][j]].zl==2)printf("\n 对方损失 %s !",A[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].nm.c_str()); if(dw[v[i][j]].zl==3)printf("\n 对方损失 %s !",T[g2j[dw[v[i][j]].gj]][dw[v[i][j]].xh].nm.c_str()); Sleep(600); vector<int>::iterator iter=find(v[i].begin(),v[i].end(),v[i][j]); //删除指定元素 v[i].erase(iter); j=-1; }else { vector<int>::iterator iter=find(v[i].begin(),v[i].end(),v[i][j]); //删除指定元素 v[i].erase(iter); j=-1; } } } if(cs[i].gj==xzgj){printf(" \n\n 我方城市防御值余剩: %d",cs[i].hp);Sleep(2000);} if(dw[lin[i][0]].gj==xzgj){printf(" \n\n 对方城市防御值余剩: %d",cs[i].hp);Sleep(2000);} if( cs[i].hp<0)cs[i].hp=0; } }
GAME

 

posted @ 2019-07-16 14:59  背‘水’一栈  阅读(147)  评论(0编辑  收藏  举报