//永恒大陆 1.5 测试版
#include<iostream>
#include<stack>
#include<bits/stdc++.h>
#include<cmath>
#include<iomanip>
#include<windows.h>
#define AA 150
#define ll long long   
#include <stdio.h>
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<conio.h>
#include<iomanip>
#include <stdio.h>
#include <iostream>
#include <cstdio>
#include <unistd.h>
#include <limits>
#include <cstdlib>
#include<bits/stdc++.h>
#include<cmath>
#include<windows.h>
using namespace std;
long long int i,j,k,z,xz,gb,dj,djc=200;
const ll tfsz=19,wpsl=6;
bool yj=0; 
//GetAsyncKeyState()
inline void cd(int x) {
	Sleep(x);
	system("cls");
}
void de1(int x) {
	int y=0;
	switch (x) {
	case 1:
		y=15;
		break;
	case 2:
		y=10;
		break;
	case 3:
		y=9;
		break;
	case 4:
		y=13;
		break;
	case 5:
		y=14;
		break;
	case 6:
		y=12;
		break;
	}
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),y);
}
int de2(int x) {
	int y=0;
	switch (x) {
	case 1:
		y=15;
		break;
	case 2:
		y=10;
		break;
	case 3:
		y=9;
		break;
	case 4:
		y=13;
		break;
	case 5:
		y=14;
		break;
	case 6:
		y=12;
		break;
	}
	return y;
}
void gs1(string x) {
	int a=x.size()-1;
	for(i=0; i<=a; ++i) {
		Sleep(100);
		cout<<x[i];
	}
}
void gs2(string x,int z) {
	int a=x.size()-1;
	for(i=0; i<=a; ++i) {
		Sleep(z);
		cout<<x[i];
	}
}
struct zb {
	string nz;
	ll pzz;
	ll lx;
	ll xl;
	ll gj;
	ll fy;
	ll bj;
	ll mbj;
	ll sb;
	ll msb; 
	ll pjz;
	ll pjs;
	ll smh;
	bool sj;	
};
struct wj {
	string mz;
	ll xl;
	ll gj;
	ll fy;
	ll bj;
	ll mbj;
	ll sb;
	ll msb;
	ll pjz;
	ll pjs;
	ll smh;
	double xlb;
	double gjb;
	double fyb;
	double pjsb;
	double smhb;
	zb ja[5];
	ll jaz[5];
};
struct sp {
	ll pz;
	string nz;
	long long sl;
};
struct khm {
	bool ma;
	string mz;
	void a11(int x) {
		if(x==1)cout<<"新手礼包克换成功"<<endl;
		Sleep(1000);
		system("cls");
	}
};
struct pp {
	string nz;
	long long int xg;
	long long int sl;
	long long int jg;
};
struct tf{
	string mz;
	double xlb;
	double gjb;
	double fyb;
	ll bj;
	ll mbj;
	ll sb;
	ll msb;
	ll pjz;
	double pjsb;
	double smhb;
	ll jg;
};
struct wp{
	ll pz; 
	string mz;
	ll sl;
};
wj rw;
sp ps[6]={{1,"碎片",0},{2,"碎片",0},{3,"碎片",0},{4,"碎片",0},{5,"碎片",0},{6,"碎片",0}};
wp dx[wpsl][6]={  { {1,"一阶兽肉",0},{2,"二阶兽肉",0},{3,"三阶兽肉",0},{4,"四阶兽肉",0},{5,"五阶兽肉",0},{6,"六阶兽肉",0} }  ,  { {1,"一阶兽经",0},{2,"二阶兽经",0},{3,"三阶兽经",0},{4,"四阶兽经",0},{5,"五阶兽经",0},{6,"六阶兽经",0} }  ,  { {1,"一阶兽骨",0},{2,"二阶兽骨",0},{3,"三阶兽骨",0},{4,"四阶兽骨",0},{5,"五阶兽骨",0},{6,"六阶兽骨",0} }  ,  { {1,"一阶兽皮",0},{2,"二阶兽皮",0},{3,"三阶兽皮",0},{4,"四阶兽皮",0},{5,"五阶兽皮",0},{6,"六阶兽皮",0} }  ,  { {1,"一阶内丹",0},{2,"二阶内丹",0},{3,"三阶内丹",0},{4,"四阶内丹",0},{5,"五阶内丹",0},{6,"六阶内丹",0} }  ,  { {1,"一阶赤石",0},{2,"二阶赤石",0},{3,"三阶赤石",0},{4,"四阶赤石",0},{5,"五阶赤石",0},{6,"六阶赤石",0} }};
tf tfz[tfsz];
khm mz[10];
vector<zb> zbbb;
void csgw();
long long int g;
string pzm(int a) {
	string sb;
	switch(a) {
	case 1:
		sb="普通 ";
		break;
	case 2:
		sb="罕见 ";
		break;
	case 3:
		sb="稀有 ";
		break;
	case 4:
		sb="史诗 ";
		break;
	case 5:
		sb="传奇 ";
		break;
	case 6:
		sb="神话 ";
		break;
	}
	return sb;
}
void aa() {
	mz[1].ma=true;
	mz[2].ma=true;
	mz[1].mz="s10000b";
	
}
void kt();
void sd();
void bg();
void sx();
void ddo();
void cw();
void gwdlw();
void pmh();
void yjt(wj x1);
void yjddo();
inline void gs(long long h, long long l, string z) {
	for (long long i = 1; i <= h; i++)
		cout << "\n";
	for (long long i = 1; i <= l; i++)
		cout << " ";
	cout << z;
	return;
}
struct hl {
	long long h,l;
};
void de(int x) {
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),x);
}
bool ax(long long key) {
	return (GetKeyState(key) < 0) ? (true) : (false);
}
typedef void (*hs)();
struct wdj {
	int x1,x2,y1,y2;
	string z;
	hs h;
};
bool axj(long long key) {
	return (GetKeyState(key) < 0) ? (true) : (false);
}
void srwj() {
	de(15);
	int saved_fd = dup(STDIN_FILENO);
	if (saved_fd == -1) {
		cerr << "保存 stdin 失败\n";
		while(1) {}
	}
	if (freopen("yhdl.txt", "r", stdin) == NULL) {
		close(saved_fd);
		cout<<"无存档"<<endl;
		exit(0);
	}
	int ccc;
	cin.clear();
	while ((ccc = getchar()) != '\n' && ccc != EOF);
	if (dup2(saved_fd, STDIN_FILENO) == -1) {
		cerr << "恢复 stdin 失败\n";
		close(saved_fd);
		while(1) {}
	}
	close(saved_fd);
	cin.clear();
	cin.sync();
	cout<<"读档成功";
	Sleep(1000);
	system("cls");
}
void drwj() {
	int saved_stdout = dup(STDOUT_FILENO);
	if (saved_stdout == -1) {
		perror("dup failed");
		while(1) {}
	}
	if (freopen("yhdl.txt", "w", stdout) == NULL) {
		//perror("freopen failed");
		
	}
	fflush(stdout);
	if (dup2(saved_stdout, STDOUT_FILENO) == -1) {
		perror("dup2 failed");
		while(1) {}
	}
	close(saved_stdout);
}
hl wz(bool x = 1, bool n = 1) {
	HANDLE hOutput = GetStdHandle(STD_OUTPUT_HANDLE);HWND h = GetForegroundWindow();
	CONSOLE_FONT_INFO consoleCurrentFont;hl hl;POINT p;if (x) {GetCursorPos(&p);ScreenToClient(h, &p);} else {GetCursorPos(&p);}if (n) {GetCurrentConsoleFont(hOutput, FALSE, &consoleCurrentFont);p.x /= consoleCurrentFont.dwFontSize.X;p.y /= consoleCurrentFont.dwFontSize.Y;}hl.h = p.y + 1;hl.l = p.x + 1;return hl;
}
void ycbj() {
	HANDLE hStdin = GetStdHandle(STD_INPUT_HANDLE);DWORD mode;GetConsoleMode(hStdin, &mode);mode &= ~ENABLE_QUICK_EDIT_MODE;SetConsoleMode(hStdin, mode);return;
}
void ycgb() {
	CONSOLE_CURSOR_INFO cursor;
	cursor.bVisible = FALSE;
	cursor.dwSize = sizeof(cursor);
	HANDLE handle = GetStdHandle(STD_OUTPUT_HANDLE);
	SetConsoleCursorInfo(handle, &cursor);
	return;
}
inline void ydgb(long long h, long long l) {
	COORD pos = { l - 1,h - 1 };HANDLE hOut = GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleCursorPosition(hOut, pos);return;
}
string jcjp() {
	if(GetAsyncKeyState('1'))return "1";if(GetAsyncKeyState('2'))return "2";if(GetAsyncKeyState('3'))return "3";if(GetAsyncKeyState('4'))return "4";if(GetAsyncKeyState('5'))return "5";if(GetAsyncKeyState('6'))return "6";if(GetAsyncKeyState('7'))return "7";if(GetAsyncKeyState('8'))return "8";if(GetAsyncKeyState('9'))return "9";if(GetAsyncKeyState('0'))return "0";if(GetAsyncKeyState(VK_BACK))return "b";if(GetAsyncKeyState(13))return "a";return "";
}
void bxwz(int size) {
	CONSOLE_FONT_INFOEX cfi = { sizeof(cfi) };GetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), FALSE, &cfi);cfi.dwFontSize.Y = size; // 修改字体高度SetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), FALSE, &cfi);
}
void spz(){
}
void sjt(){
	cout<<"这次升级需要"<<djc<<"G"<<endl;
	cout<<"1/0 是否升级"<<endl;
	char ch;
	int a1=1,a2=dj;
	ch=getch();
	if(ch=='1'){
		if(gb>=djc){
			cout<<"升级成功"<<endl;
			cout<<"你是"<<dj+1<<"级了"<<endl;
			while(a2){
				a1*=2;
				a2--;
			}
			rw.xl+=a1*10;
			rw.gj+=a1*5;
			dj++;
			djc*=5;
		}else{
			cout<<"G不够"<<endl;
		}
	} 
}
bool pdbj(int y,int x1,int x2,int ys,string zt){
	hl z=wz(1,1);
	bool a=0;
	if(z.h==y&&z.l>=x1&&z.l<=x2){ydgb(y,x1);de(ys*16);cout<<zt;de(ys);if(axj(VK_LBUTTON)){a=1;} 
	}else{ydgb(y,x1);cout<<zt;}
	de(15);
}
int main() {
	string aaaa;
	system("title 永恒大陆1.5");
	cin.tie(0);
	cout.tie(0);
	system("mode con cols=100 lines=50");
	SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),15);
	ycgb();
	ycbj();
	kt();
	zb a={"11",6,4,100,100,10000};
	zbbb.push_back(a);
	int x1=3,y1=2;
	hl z;
	while(1){
		z=wz(1,1);
		ydgb(1,1);
		cout<<"##############"<<endl;
		cout<<"#            #"<<endl;
		cout<<"#           0#"<<endl;
		cout<<"#           0#"<<endl;
		cout<<"#   1        #"<<endl;
		cout<<"##############"<<endl;
		cout<<"上下左右键移动"<<endl;
		ydgb(y1,x1);
		cout<<"@";
		Sleep(200);
		if(GetAsyncKeyState(VK_LEFT)&&x1>2){
			ydgb(y1,x1);cout<<" ";if(x1-1==5&&y1==5)sd();else if(x1-1==13&&(y1==3||y1==4))cw();else x1--;
		}
		if(GetAsyncKeyState(VK_RIGHT)&&x1<=12){
			ydgb(y1,x1);cout<<" ";if(x1+1==5&&y1==5)sd();else if(x1+1==13&&(y1==3||y1==4))cw();else x1++;
		}
		if(GetAsyncKeyState(VK_UP)&&y1>2){
			ydgb(y1,x1);cout<<" ";if(x1==5&&y1-1==5)sd();else if(x1==13&&(y1-1==3||y1-1==4))cw();else y1--;
		}
		if(GetAsyncKeyState(VK_DOWN)&&y1<=4){
			ydgb(y1,x1);cout<<" ";if(x1==5&&y1+1==5)sd();else if(x1==13&&(y1+1==3||y1+1==4))cw();else y1++;
		}
		
		if(z.h==1&&z.l>=27&&z.l<=34){ydgb(1,27);de(240);cout<<"查看属性";de(15);if(axj(VK_LBUTTON)){sx();} 
		}else{ydgb(1,27);cout<<"查看属性";}
		if(z.h==2&&z.l>=27&&z.l<=30){ydgb(2,27);de(240);cout<<"背包";de(15);if(axj(VK_LBUTTON)){bg();} 
		}else{ydgb(2,27);cout<<"背包";}
	}
	return 0;
}
void wjxsz(wj x){ 	
	ydgb(3,15);cout<<"血量:"<<x.xl<<"   ";
	ydgb(4,15);cout<<"攻击:"<<x.gj<<"   ";
	ydgb(5,15);cout<<"防御:"<<x.fy<<"   ";
	ydgb(6,15);cout<<"闪避:"<<x.sb<<"%"<<"   ";
	ydgb(7,15);cout<<"免闪避:"<<x.msb<<"%"<<"   ";
	ydgb(8,15);cout<<"暴击:"<<x.bj<<"%"<<"   ";
	ydgb(9,15);cout<<"免暴击:"<<x.mbj<<"%"<<"   ";
	ydgb(10,15);cout<<"破甲率:"<<x.pjz<<"%"<<"   ";
	ydgb(11,15);cout<<"破甲伤害:"<<x.pjs<<"   ";
	ydgb(12,15);cout<<"恢复血量:"<<x.smh<<"   "; 	
}
void wjxsz1(tf x){ 	 
	if(x.xlb)cout<<"+"<<x.xlb*100<<"%血量 ";
	if(x.gjb)cout<<"+"<<x.gjb*100<<"%攻击 ";
	if(x.fyb)cout<<"+"<<x.fyb*100<<"%防御 ";
	if(x.bj)cout<<"+"<<x.bj<<"%暴击 ";
	if(x.mbj)cout<<"+"<<x.mbj<<"%免暴击 ";
	if(x.sb)cout<<"+"<<x.sb<<"%闪避 ";
	if(x.msb)cout<<"+"<<x.msb<<"%免闪避 ";
	if(x.pjz)cout<<"+"<<x.pjz<<"%破甲率 ";
	if(x.pjsb)cout<<"+"<<x.pjsb*100<<"%破甲伤害 "; 
	if(x.smhb)cout<<"+"<<x.smhb*100<<"%恢复血量 ";
	cout<<x.jg<<"点 天赋点"; 
}
void wjxsz2(tf &x,tf y){
	x.xlb+=y.xlb;
	x.gjb+=y.gjb;
	x.fyb+=y.fyb;
	x.bj+=y.bj;
	x.mbj+=y.mbj;
	x.sb+=y.sb;
	x.msb+=y.msb; 
	x.pjsb+=y.pjsb;
	x.pjz+=y.pjz;
	x.smhb+=y.smhb;
}
void wjxsz3(tf &x,tf y){
	x.xlb-=y.xlb;
	x.gjb-=y.gjb;
	x.fyb-=y.fyb;
	x.bj-=y.bj;
	x.mbj-=y.mbj;
	x.sb-=y.sb;
	x.msb-=y.msb; 
	x.pjsb-=y.pjsb;
	x.pjz-=y.pjz;
	x.smhb-=y.smhb;
}
void kt() {
	gs1("欢迎来到永恒大陆1.5...测试版");
	cout<<endl;
	gs1("暂未搞定存档问题所以暂时无法存档");
	cd(100);
	gs1("输入你的名字");
	cout<<endl;
	cin>>rw.mz;
	cd(100);
	wj sz[3];
	/*
	string mz;
	ll xlb;
	ll gjb;
	ll fyb;
	ll bj;
	ll mbj;
	ll sb;
	ll msb;
	ll pjz;
	ll pjsb;
	ll smhb;
	ll jg;
	*/
	tfz[0]={"重铁指虎",0,0.05,0,0,0,0,0,0,0.05,0,1};
	tfz[1]={"王八壳",0,0,0.05,0,0,5,0,0,0,0,1};
	tfz[2]={"固化术",0.05,0,0.05,0,0,0,0,0,0,0,1};
	tfz[3]={"皮肤固化",0.1,0,0.05,0,0,0,0,0,0,0,2};
	tfz[4]={"疾速",0,0,0,0,0,5,5,0,0,0,2};
	tfz[5]={"武艺增生",0.05,0.05,0.05,5,0,0,0,0,0,0,2};
	tfz[6]={"铜墙铁壁",0,0,0.15,0,0,0,0,0,0,0,2};
	tfz[7]={"软骨术",0,0,0.1,0,0,5,0,0,0,0,2};
	tfz[8]={"大胃王",0.05,0,0,0,0,0,0,0,0,0.05,2};
	tfz[9]={"铁砂掌",0,0.1,0,5,0,0,0,0,0,0,2};
	tfz[10]={"破伤风拳套",0,0.15,0,5,0,0,0,5,0.15,0,5};
	tfz[11]={"不坏金身",0.15,0,0.15,0,5,0,0,0,0,0.05,5};
	tfz[12]={"攻防皆备",0.15,0.15,0,0,5,0,0,5,0,0,5};
	tfz[13]={"虚空步",0,0,0.05,0,0,15,15,0,0,0,5};
	tfz[14]={"百艺精通",0.1,0.1,0.1,5,0,5,0,0,0,0,5};
	tfz[15]={"生命法则",0.15,0,0.05,0,0,5,0,0,0,0.15,5};
	tfz[16]={"防御法则",0.05,0,0.3,0,0,0,0,0,0,0.05,5};
	tfz[17]={"力量法则",0,0.3,0,10,0,0,0,0,0.05,0,5};
	tfz[18]={"血之法则",0.3,0,0.05,0,0,0,0,0,0,0.05,5};
	sz[0]={rw.mz,20,2,4,0,0,0,0,5,5,2,1,1,1,1,1};sz[1]={rw.mz,8,5,2,20,0,10,0,15,10,1,1,1,1,1,1};sz[2]={rw.mz,12,4,2,10,5,5,5,5,5,1,1,1,1,1,1};
	gs1("选择你的职业");
	cout<<endl<<"肉盾"<<endl;
	cout<<"刺客"<<endl;
	cout<<"剑士"<<endl; 
	hl z;
	bool az=1;
	while(az){
		ydgb(1,1);cout<<"选择你的职业";
		z=wz(1,1);
		if(z.h==2&&z.l<=4){ydgb(2,1);de(240);cout<<"肉盾";de(15);wjxsz(sz[0]);if(axj(VK_LBUTTON)){az=0;rw=sz[0];} 
		}else{ydgb(2,1);cout<<"肉盾";}
		
		if(z.h==3&&z.l<=4){ydgb(3,1);de(240);cout<<"刺客";de(15);wjxsz(sz[1]);if(axj(VK_LBUTTON)){az=0;rw=sz[1];} 
		}else{ydgb(3,1);cout<<"刺客";}
		
		if(z.h==4&&z.l<=4){ydgb(4,1);de(240);cout<<"剑士";de(15);wjxsz(sz[2]);if(axj(VK_LBUTTON)){az=0;rw=sz[2];} 
		}else{ydgb(4,1);cout<<"剑士";}
	} 
	az=1;
	cd(100);
	int tfd=10;
	tf xzd={"",0,0,0,0,0,0,0,0,0,0,0};
	bool xs[tfsz];
	fill(xs,xs+tfsz,0);
	while(az){
		ydgb(1,1);cout<<"选择你的天赋 10/"<<tfd<<"  ";
		z=wz(1,1);
		for(int i=0;i<tfsz;++i){
			if(z.h==i+2&&z.l<=tfz[i].mz.size()){ydgb(i+2,1);if(!xs[i])de(240);else de(15);cout<<tfz[i].mz;de(15);wjxsz1(tfz[i]);if(axj(VK_LBUTTON)){if(!xs[i]&&tfd>=tfz[i].jg){wjxsz2(xzd,tfz[i]);tfd-=tfz[i].jg;xs[i]=1;xzd.jg+=tfz[i].jg;}else if(xs[i]){wjxsz3(xzd,tfz[i]);tfd+=tfz[i].jg;xs[i]=0;xzd.jg-=tfz[i].jg;}} 
			}else{ydgb(i+2,1);if(xs[i])de(240);else de(15); cout<<tfz[i].mz;de(15);cout<<"                                                     ";}	
		}
		ydgb(tfsz+2,1);cout<<"总加成:";wjxsz1(xzd);cout<<"                                                                 ";
		if(z.h==tfsz+3&&z.l<=4){ydgb(tfsz+3,1);de(240);cout<<"确定";de(15);if(axj(VK_LBUTTON)){az=0;} 
		}else{ydgb(tfsz+3,1);cout<<"确定";}
	}
	rw.xlb+=xzd.xlb;
	rw.gjb+=xzd.gjb;
	rw.fyb+=xzd.fyb;
	rw.sb+=xzd.sb;
	rw.msb+=xzd.msb;
	rw.bj+=xzd.bj;
	rw.mbj+=xzd.mbj;
	rw.pjz+=xzd.pjz;
	rw.pjsb+=xzd.pjsb;
	rw.smhb+=xzd.smhb;
	cd(1000); 
}
void sd() {
	cd(100);
	while(1){
		
	}
	cd(100);	
}
void gwdlw(string x) {
	cd(1000);
}
void bg() {	
	cd(100);
	hl z;
	bool ax=1;
	while(ax){
		z=wz(1,1);
		if(z.h==1&&z.l<=4){
			ydgb(1,1);
			de(240);
			cout<<"装备";
			de(15);
			if(axj(VK_LBUTTON)){
				cd(100);
				while(!zbbb.empty()){
					z=wz(1,1);
					for(int i=0;i<zbbb.size();++i){
						if(z.h==i+1&&z.l<=zbbb[i].nz.size()){
							ydgb(i+1,1);
							de(de2(zbbb[i].pzz)*16);
							cout<<zbbb[i].nz;
							de(15);
							if(axj(VK_LBUTTON)){
								cd(100);
								de1(zbbb[i].pzz);
								cout<<"名字:"<<zbbb[i].nz<<endl;
								cout<<"血量:"<<zbbb[i].xl<<endl;
								cout<<"攻击:"<<zbbb[i].gj<<endl;
								cout<<"防御:"<<zbbb[i].fy<<endl;
								cout<<"闪避:"<<zbbb[i].sb<<"%"<<endl;
								cout<<"免闪避:"<<zbbb[i].msb<<"%"<<endl;
								cout<<"暴击:"<<zbbb[i].bj<<"%"<<endl;
								cout<<"免暴击:"<<zbbb[i].mbj<<"%"<<endl;
								cout<<"破甲率:"<<zbbb[i].pjz<<"%"<<endl;
								cout<<"破甲伤害:"<<zbbb[i].pjs<<endl;
								cout<<"恢复血量:"<<zbbb[i].smh<<endl;
								cout<<"是否穿带"<<endl;
								bool c1d=0;
								while(1){
									z=wz(1,1);
									if(z.h==13&&z.l<=2){ydgb(13,1);de(de2(zbbb[i].pzz)*16);;cout<<"是";de1(zbbb[i].pzz);if(axj(VK_LBUTTON)){c1d=1;break;} 
									}else{ydgb(13,1);cout<<"是";}
									if(z.h==13&&z.l>=5&&z.l<=6){ydgb(13,5);de(de2(zbbb[i].pzz)*16);cout<<"否";de1(zbbb[i].pzz);if(axj(VK_LBUTTON)){break;} 
									}else{ydgb(13,5);cout<<"否";}
								}
								cd(100);
								de(15);
								if(c1d){
									if(rw.jaz[zbbb[i].lx]==0){
										rw.ja[zbbb[i].lx]=zbbb[i];
										rw.jaz[zbbb[i].lx]=1;
										
										rw.xl+=zbbb[i].xl;
										rw.gj+=zbbb[i].gj;
										rw.fy+=zbbb[i].fy;
										rw.sb+=zbbb[i].sb;
										rw.msb+=zbbb[i].msb;
										rw.bj+=zbbb[i].bj;
										rw.mbj+=zbbb[i].mbj;
										rw.pjz+=zbbb[i].pjz;
										rw.pjs+=zbbb[i].pjs;
										rw.smh+=zbbb[i].smh;
										zbbb.erase(zbbb.begin()+i);
										sx();
									}else cout<<"你已经穿过同一种装备了";
									
									cd(1000);
								}
							}
						}else{
							ydgb(i+1,1);
							de1(zbbb[i].pzz);
							cout<<zbbb[i].nz;
							de(15);
						}
					}	
					if(z.h==zbbb.size()+1&&z.l<=4){ydgb(zbbb.size()+1,1);de(240);cout<<"退出";de(15);if(axj(VK_LBUTTON)){cd(100);break;} 
					}else{ydgb(zbbb.size()+1,1);cout<<"退出";}
				}
				
			}
		}else{
			ydgb(1,1);
			cout<<"装备";
		}
		if(z.h==2&&z.l<=4){
			ydgb(2,1);
			de(240);
			cout<<"材料";
			de(15);
			if(axj(VK_LBUTTON)){
				cd(100);
				for(int i=0;i<wpsl;++i){
					for(int j=0;j<6;++j){
						if(dx[i][j].sl){
							de1(dx[i][j].pz);cout<<dx[i][j].mz<<" "<<dx[i][j].sl<<"个"<<endl;
						}
					}
				}
				system("pause");
				cd(100);
				de(15);
			}
		}else{
			ydgb(2,1);
			cout<<"材料";
		}
		if(z.h==3&&z.l<=4){
			ydgb(3,1);
			de(240);
			cout<<"卸装";
			de(15);
			int sl=0;
			zb a={"a1",6,4,100,100,100};
			if(axj(VK_LBUTTON)){
				cd(100);
				bool xxz[5]={1,1,1,1,1};
				while(rw.jaz[0]||rw.jaz[1]||rw.jaz[2]||rw.jaz[3]||rw.jaz[4]){
					z=wz(1,1);
					for(int i=0;i<5;++i){
						if(rw.jaz[i]){
							if(xxz[i]){
								sl++;
								xxz[i]=0;
							}
							if(z.h==sl&&z.l<=10){ydgb(sl,1);de(de2(rw.ja[i].pzz)*16);cout<<rw.ja[i].nz;de(15);
								if(axj(VK_LBUTTON)){
									cd(100);
									de1(rw.ja[i].pzz);
									cout<<"名字:"<<rw.ja[i].nz<<endl;
									cout<<"血量:"<<rw.ja[i].xl<<endl;
									cout<<"攻击:"<<rw.ja[i].gj<<endl;
									cout<<"防御:"<<rw.ja[i].fy<<endl;
									cout<<"闪避:"<<rw.ja[i].sb<<"%"<<endl;
									cout<<"免闪避:"<<rw.ja[i].msb<<"%"<<endl;
									cout<<"暴击:"<<rw.ja[i].bj<<"%"<<endl;
									cout<<"免暴击:"<<rw.ja[i].mbj<<"%"<<endl;
									cout<<"破甲率:"<<rw.ja[i].pjz<<"%"<<endl;
									cout<<"破甲伤害:"<<rw.ja[i].pjs<<endl;
									cout<<"恢复血量:"<<rw.ja[i].smh<<endl;
									cout<<"是否卸装";
									bool c1d=0;
									while(1){
										z=wz(1,1);
										if(z.h==13&&z.l<=2){ydgb(13,1);de(de2(rw.ja[i].pzz)*16);;cout<<"是";de1(rw.ja[i].pzz);if(axj(VK_LBUTTON)){c1d=1;break;} 
										}else{ydgb(13,1);cout<<"是";}
										if(z.h==13&&z.l>=5&&z.l<=6){ydgb(13,5);de(de2(rw.ja[i].pzz)*16);cout<<"否";de1(rw.ja[i].pzz);if(axj(VK_LBUTTON)){break;} 
										}else{ydgb(13,5);cout<<"否";}
									}
									cd(100);
									de(15);
									if(c1d){
										rw.jaz[i]=0;
										rw.xl-=rw.ja[i].xl;
										rw.gj-=rw.ja[i].gj;
										rw.fy-=rw.ja[i].fy;
										rw.sb-=rw.ja[i].sb;
										rw.msb-=rw.ja[i].msb;
										rw.bj-=rw.ja[i].bj;
										rw.mbj-=rw.ja[i].mbj;
										rw.pjz-=rw.ja[i].pjz;
										rw.pjs-=rw.ja[i].pjs;
										rw.smh-=rw.ja[i].smh;
										zbbb.push_back(rw.ja[i]);
										rw.ja[i]={"",0,0,0,0,0,0,0,0,0,0};
										cd(1000);
									}
								} 
							}else{ydgb(sl,1);de1(rw.ja[i].pzz);cout<<rw.ja[i].nz;de(15);}		
						}
					}
					if(z.h==sl+1&&z.l<=4){ydgb(sl+1,1);de(240);cout<<"退出";de(15);if(axj(VK_LBUTTON)){cd(100);break;} 
					}else{ydgb(sl+1,1);cout<<"退出";}
				}
				cd(100);
				de(15);
			}
		}else{
			ydgb(3,1);
			cout<<"卸装";
		}
		if(z.h==4&&z.l<=4){ydgb(4,1);de(240);cout<<"退出";de(15);if(axj(VK_LBUTTON)){cd(100);ax=0;} 
		}else{ydgb(4,1);cout<<"退出";}
	}
}
void sx() {
	cd(100);
	de(15);
	cout<<"名字:"<<rw.mz<<endl;
	cout<<"血量:"<<rw.xl*rw.xlb<<"("<<rw.xl<<")"<<endl;
	cout<<"攻击:"<<rw.gj*rw.gjb<<"("<<rw.gj<<")"<<endl;
	cout<<"防御:"<<rw.fy*rw.fyb<<"("<<rw.fy<<")"<<endl;
	cout<<"闪避:"<<rw.sb<<"%"<<endl;
	cout<<"免闪避:"<<rw.msb<<"%"<<endl;
	cout<<"暴击:"<<rw.bj<<"%"<<endl;
	cout<<"免暴击:"<<rw.mbj<<"%"<<endl;
	cout<<"破甲率:"<<rw.pjz<<"%"<<endl;
	cout<<"破甲伤害:"<<rw.pjs*rw.pjsb<<"("<<rw.pjs<<")"<<endl;
	cout<<"恢复血量:"<<rw.smh*rw.smhb<<"("<<rw.smh<<")"<<endl; 
	for(i=0; i<5; ++i) {
		if(i==0)cout<<"头盔:";
		if(i==1)cout<<"胸甲:";
		if(i==2)cout<<"裤子:";
		if(i==3)cout<<"鞋子:";
		if(i==4)cout<<"武器:";
		if(rw.jaz[i]) {
			de1(rw.ja[i].pzz);
			cout<<pzm(rw.ja[i].pzz)<<rw.ja[i].nz;
			de(15);
		} else {
			cout<<"无";
		}
		cout<<endl;
	}
	system("pause");
	cd(100);
}
void csgw() {
	//xl gj bj bd fy mbd mbj ja
	/*gw[5][1]={"",0,0,0,0,0,0,0};
	gw[5][2]={"",0,0,0,0,0,0,0};
	gw[5][3]={"",0,0,0,0,0,0,0};
	gw[5][4]={"",0,0,0,0,0,0,0};
	gw[5][5]={"",0,0,0,0,0,0,0};
	gw[5][6]={"",0,0,0,0,0,0,0};
	gw[6][1]={"",0,0,0,0,0,0,0};
	gw[6][2]={"",0,0,0,0,0,0,0};
	gw[6][3]={"",0,0,0,0,0,0,0};
	gw[6][4]={"",0,0,0,0,0,0,0};
	gw[6][5]={"",0,0,0,0,0,0,0};
	gw[6][6]={"",0,0,0,0,0,0,0};*/
}
long long  yd(bool x,int y,int z) {
	if(x) {
		y++;
	} else {
		y--;
	}
	if(y>z) {
		y=1;
	} else if(y==0) {
		y=z;
	}
	return y;
}
long long ty(int y,int z) {
	if(z>=4)y--;
	else if(z>=1)y++;
	return y;
}
long long  dod(wj x,wj y) { //x 主角 y 被打
	std::srand(static_cast<unsigned int>(std::time(0)));
	int sb=x.sb-y.msb,bj=x.bj-y.mbj,pj=x.pjz,g1j=0;
	g1j=x.gj;
	if(rand()%100+1<=bj)g1j*=2;
	g1j-=y.fy;
	if(rand()%100+1<=sb)g1j=0;
	if(rand()%100+1<=pj)g1j+=x.pjs;
	return g1j;
}
void ddo(wj x,wj y) {
	//血量 攻击  暴击  被动  防御  免被动 免暴击 价格 数量
	int x1=1,y1=5,x2=15,y2=5,tyz=0,gjl=0,ggj1=0,ggj2=0,ggj3=0,ggj4=0,ggjc=6,lgj,yyl,szs=1;
	int gtyz=0,xjn1=0,xjnc=50,xjn1y=0,xjn2=0,xjn2y=0;
	wj yy1=y;
	yy1.gj/=5;
	std::srand(static_cast<unsigned long long int>(std::time(0)));
	if(y.xl>=18)szs=2;
	if(y.xl>=50)szs=3;
	if(y.xl>=150)szs=4;
	if(y.xl>=200)szs=5;
	while(x.xl>0&&y.xl>0) {
		for(i=1; i<=5; ++i) {
			for(j=1; j<=15; ++j) {
				if(x1==j&&y1==i) {
					if(ggj3>0&&y1==y2&&(x2+1==x1||x2-1==x1))x.xl-=dod(y,x);
					if(ggj4>0&&ggj4==x1)x.xl-=dod(yy1,x);
					if(ggj2>0&&(j<=x2&&j>=yyl)&&i==5)x.xl-=dod(y,x);
					cout<<"1";
				} else if(x2==j&&y2==i) {
					if(gjl>0&&y1==y2&&(x1+1==x2||x1-1==x2))y.xl-=dod(x,y);
					if(abs(xjn2y-x2)<=5-xjn2/2&&abs(xjn2-j)+xjn2y/2<=i)y.xl-=dod(x,y)*5;
					cout<<"2";
				}else if(xjn1>=0&&xjn1y==j){
					de1(3);cout<<"|";de1(1);
					if(x2==xjn1y)y.xl-=dod(x,y);
				}else if(xjn2>1&&xjn2/2<=i&&abs(xjn2y-j)<=5-xjn2/2&&abs(xjn2y-j)+xjn2/2<=i){
					cout<<"|";
				} else if(ggj1>=0&&lgj==j) {
					de1(2);cout<<"|";de1(1);
					if(x1==lgj)x.xl-=(dod(y,x)/5);
				} else if(ggj2>0&&(j<=x2&&j>=yyl)&&i==5) {
					cout<<"-";
					if(x1==j&&y1==5)x.xl-=dod(y,x);
				} else if(gjl>0&&y1==i&&(x1-1==j||x1+1==j)) {
					cout<<"-";
				} else if(ggj3>0&&y2==i&&(x2-1==j||x2+1==j)) {
					cout<<"-";
					if(ggj3>0&&y1==y2&&(x1+1==x2||x1-1==x2))x.xl-=dod(y,x);
				} else if(ggj4>=0&&j==ggj4) {
					cout<<"|";
					if(x1==j)x.xl-=dod(y,x);
				} else {
					cout<<" ";
				}
			}
			cout<<"|"<<endl;
		}
		for(i=1; i<=16; ++i) {
			cout<<"=";
		}
		cout<<endl;
		cout<<"A D左右"<<endl;
		cout<<"W上"<<endl;
		cout<<"空格攻击"<<endl;
		cout<<"你:"<<x.xl<<endl;
		cout<<y.mz<<":"<<y.xl<<endl;
		cout<<"技能冷却:"<<xjnc<<" o释放"<<endl;
		if(x1<=x2&&x2-x1>=3&&ggj2<=0)x2=yd(false,x2,15);
		if(x1>x2&&x1-x2>=3&&ggj2<=0)x2=yd(true,x2,15);
		if(gtyz<=0){
			gtyz=rand()%5+1;
			if(gtyz==3){
				gtyz=6;
				y2=ty(y2,gtyz);
				gtyz--;	
			}else{
				gtyz=0;	
			}
		}else{
			y2=ty(y2,gtyz);
			gtyz--;		
		}
		if(abs(x1-x2)<=2&&ggj2<=0&&x.xl>y.xl){
			if(x1>x2)x2=yd(false,x2,15);
			if(x1<=x2)x2=yd(true,x2,15);
		}
		if(ggj1<=0&&ggj2<=0&&ggj3<=0&&ggjc==1&&ggj4<=0) {
			xz=rand()%szs+1;
			if(xz==5) {
				ggj4=15;
			}
			if(xz==4) {
				lgj=x1;
				ggj1=4;
			}
			if(xz==3) {
				ggj2=5;
				yyl=y2;
				if(x2>=10)x2-=5;
				if(x2<=5)x2+=5;
			}
			if(xz==2)ggj3=3;
		} else {
			ggj1--;
			ggj2--;
			ggj3--;
			ggj4--;
			ggjc--;
		}
		if(ggjc<=0)ggjc=6;
		if(xjnc<=0)xjnc=50;
		if(GetAsyncKeyState('A')||GetAsyncKeyState(VK_LEFT))x1=yd(false,x1,15);
		if(GetAsyncKeyState('D')||GetAsyncKeyState(VK_RIGHT))x1=yd(true,x1,15);
		if((GetAsyncKeyState('W')||GetAsyncKeyState(VK_UP))&&tyz==0) {
			tyz=6;
			y1=ty(y1,tyz);
			tyz--;
		} else if(tyz>0) {
			y1=ty(y1,tyz);
			tyz--;
		}
		if(GetAsyncKeyState(VK_SPACE)) {
			gjl=2;
		}
		if(xjn1<=0&&xjnc<=1&&xjn2<=0){
			if(GetAsyncKeyState('O')){
				xz=rand()%1+2;
				if(xz==1){
					xjn1=6;
					xjn1y=x2;	
				}else if(xz==2){
					xjn2=10;
					xjn2y=x2;
				}
			}
		}else{
			xjnc--;
			xjn1--;
			xjn2--;
		}
		gjl--;
		Sleep(50);
		system("cls");
		cout.flush();
	}
	
	cd(500);
	if(y.xl<=0) {
		cout<<"你赢了"<<endl;
		gwdlw(y.mz);
	} else {
		cout<<"你输了"<<endl;
		cd(1000);
	}
	
	cd(1000);
}
bool yjddo(wj x,wj y) {
	//血量 攻击  暴击  被动  防御  免被动 免暴击 价格 数量
	int x1=1,y1=5,x2=15,y2=5,tyz=0,gjl=0,ggj1=0,ggj2=0,ggj3=0,ggj4=0,ggjc=6,lgj,yyl,szs=1;
	int gtyz=0,xjn1=0,xjnc=50,xjn1y=0;
	wj yy1=y;
	yy1.gj/=5;
	std::srand(static_cast<unsigned long long int>(std::time(0)));
	if(y.xl>=18)szs=2;
	if(y.xl>=50)szs=3;
	if(y.xl>=150)szs=4;
	if(y.xl>=200)szs=5;
	while(x.xl>0&&y.xl>0) {
		for(i=1; i<=5; ++i) {
			for(j=1; j<=15; ++j) {
				if(x1==j&&y1==i) {
					if(ggj3>0&&y1==y2&&(x2+1==x1||x2-1==x1))x.xl-=dod(y,x);
					if(ggj4>0&&ggj4==x1)x.xl-=dod(yy1,x);
					if(ggj2>0&&(j<=x2&&j>=yyl)&&i==5)x.xl-=dod(y,x);
					cout<<"1";
				} else if(x2==j&&y2==i) {
					if(gjl>0&&y1==y2&&(x1+1==x2||x1-1==x2))y.xl-=dod(x,y);
					if(xjn1)
						cout<<"2";
				}else if(xjn1>=0&&xjn1y==j){
					de1(3);cout<<"|";de1(1);
					if(x2==xjn1y)y.xl-=dod(x,y);
				} else if(ggj1>=0&&lgj==j) {
					de1(2);cout<<"|";de1(1);
					if(x1==lgj)x.xl-=(dod(y,x)/5);
				} else if(ggj2>0&&(j<=x2&&j>=yyl)&&i==5) {
					cout<<"-";
					if(x1==j&&y1==5)x.xl-=dod(y,x);
				} else if(gjl>0&&y1==i&&(x1-1==j||x1+1==j)) {
					cout<<"-";
				} else if(ggj3>0&&y2==i&&(x2-1==j||x2+1==j)) {
					cout<<"-";
					if(ggj3>0&&y1==y2&&(x1+1==x2||x1-1==x2))x.xl-=dod(y,x);
				} else if(ggj4>=0&&j==ggj4) {
					cout<<"|";
					if(x1==j)x.xl-=dod(y,x);
				} else {
					cout<<" ";
				}
			}
			cout<<"|"<<endl;
		}
		for(i=1; i<=16; ++i) {
			cout<<"=";
		}
		cout<<endl;
		cout<<"A D左右"<<endl;
		cout<<"W上"<<endl;
		cout<<"空格攻击"<<endl;
		cout<<"你:"<<x.xl<<endl;
		cout<<y.mz<<":"<<y.xl<<endl;
		cout<<"技能冷却:"<<xjnc<<" o释放"<<endl;
		if(x1<=x2&&x2-x1>=3&&ggj2<=0)x2=yd(false,x2,15);
		if(x1>x2&&x1-x2>=3&&ggj2<=0)x2=yd(true,x2,15);
		if(gtyz<=0){
			gtyz=rand()%5+1;
			if(gtyz==3){
				gtyz=6;
				y2=ty(y2,gtyz);
				gtyz--;	
			}else{
				gtyz=0;	
			}
		}else{
			y2=ty(y2,gtyz);
			gtyz--;		
		}
		if(abs(x1-x2)<=2&&ggj2<=0&&x.xl>y.xl){
			if(x1>x2)x2=yd(false,x2,15);
			if(x1<=x2)x2=yd(true,x2,15);
		}
		if(ggj1<=0&&ggj2<=0&&ggj3<=0&&ggjc==1&&ggj4<=0) {
			xz=rand()%szs+1;
			if(xz==5) {
				ggj4=15;
			}
			if(xz==4) {
				lgj=x1;
				ggj1=4;
			}
			if(xz==3) {
				ggj2=5;
				yyl=y2;
				if(x2>=10)x2-=5;
				if(x2<=5)x2+=5;
			}
			if(xz==2)ggj3=3;
		} else {
			ggj1--;
			ggj2--;
			ggj3--;
			ggj4--;
			ggjc--;
		}
		if(ggjc<=0)ggjc=6;
		if(xjnc<=0)xjnc=50;
		if(GetAsyncKeyState('A')||GetAsyncKeyState(VK_LEFT))x1=yd(false,x1,15);
		if(GetAsyncKeyState('D')||GetAsyncKeyState(VK_RIGHT))x1=yd(true,x1,15);
		if((GetAsyncKeyState('W')||GetAsyncKeyState(VK_UP))&&tyz==0) {
			tyz=6;
			y1=ty(y1,tyz);
			tyz--;
		} else if(tyz>0) {
			y1=ty(y1,tyz);
			tyz--;
		}
		if(GetAsyncKeyState(VK_SPACE)) {
			gjl=2;
		}
		if(xjn1<=0&&xjnc<=1){
			if(GetAsyncKeyState('O')){
				xjn1=6;
				xjn1y=x2;
			}
		}else{
			xjnc--;
			xjn1--;
		}
		gjl--;
		Sleep(50);
		system("cls");
		cout.flush();
	}
	
	cd(500);
	if(y.xl<=0) {
		cout<<"你赢了"<<endl;
		return 1;
	} else {
		cout<<"你输了"<<endl;
		return 0;
	}
	
	cd(1000);
}
void cw() {
	
}