#include<bits/stdc++.h>
#include<windows.h>
#define cls system("cls");
#define pua system("pause");
#define et cout<<endl
using namespace std;
int a,b,c,d,e,f,g,h,l[10],r[10],z[10],z1[10],q[10],v[10],w[10],dd[10];//a=玉,b=甩剑,c=防,d=狒狒,e=闪,f=上挂
//h=hh,l=->,r=ff,q=拳,v=击 ,w=电,dd=洞 
int p1=0,p2=0; 
int cs=0;
bool kg=0;
void pr(string s,int t=15){
	for(int i=0;i<s.size();i++){
		cout<<s[i];
		Sleep(t);
	}
}
void cp(string s,int fc=15,int bc=0,bool slow=0,int t=1){
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|bc*16|FOREGROUND_INTENSITY|fc);
    if(slow)pr(s,t);
	else cout<<s;
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|7);
    return;
} 
void prr(string s,int t=1){
	for(int i=0;i<s.size();i++)
		cout<<s[i];
}
void ccp(string s,int fc=15,int bc=0,bool slow=0,int t=1){
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|bc*16|FOREGROUND_INTENSITY|fc);
    if(slow)prr(s,t);
	else cout<<s;
    SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY|7);
    return;
} 
void gz(){
	puts("基础\n玉、防、闪、甩剑、哈哈(反弹)\n2防=1盾(S) 前台盾3.5G(前台:本回合出的招式)\n2盾=1钟(G) 前台钟8G\n=合成,合成后可在任意回合出,出后消失\n->连续出,不出则消失\n");
	puts("戳系\n1玉=2戳(1S) 2戳=1千年(1S)->万年(1G)->亿年(2G)\n全可闪,戳可防,不可哈,不可玉\n");
	puts("斩系\n1玉1防=2斩(1S) 2斩=1元气斩(1S)=1猪油斩(1G)(要出过中猪,不消耗中猪)\n不可闪,斩可防,斩和元气斩可哈,不可玉\n");
	puts("猪系\n1玉=1小猪(1S) 2小猪=1中猪(1G) 2中猪=1大猪(2G)->吴猪(4G)->聪明吴猪(8G)\n不可闪,小中猪可哈,小猪可防,不可玉\n");
	puts("狒狒系\n3甩剑 或 4玉2防(两人局)=1狒狒(3.5G)=1蕉蕉(+1命) 2狒狒=1暗黑狒狒(7G)=1暗黑蕉蕉(+2命)\n不可闪,不可哈,不可防,不可玉\n");
	puts("绝杀系\2玉=1黑洞(吸对方本回合物质,本轮防御清零) 2甩剑1黑洞=1白洞(1G) 1黑洞+1白洞=1虫洞(2G)\n不可闪,白洞可哈,不可防,不可玉\n");
	puts("拳系、击系\n2玉=1重拳(1S) 2重拳=1天地(1G) 2天地=1天相(2G)=1马丁(4G)->百变马丁(8G)\n1玉1防=1暴击(1S) 2暴击=1重击(1G) 2重击=1痛击(2G)=1马丁(4G)->百变马丁(8G)\n不可闪,暴击重击可哈,不可防,重击可玉\n");
	puts("电系\n2闪=1小电(1S) 2小电=1中电(1G)2中电=1大电(2G)->雷神(4G)\n可闪,不可哈,小电可防,不可玉\n");
	puts("开挂\nn10玉=1绝杀(-1命) 2绝杀=1超级绝杀(-2命)\n不可闪,不可哈,不可防,不可玉\n");
	puts("洞系\n上挂\n举报\n下挂\n");
	pua
	cls
} 
void sc(){
	return ;
}
void rj()//人机系统
{
	
	return;
}
void xrj()//小人机系统 
{
	a=b=c=d=e=f=g=h=0;
	int zy=0;
	int us=0,ks=0,js=0,bs=0;
	int a1,b1,c1,e1,d1,f1,h1;
	a1=b1=c1=e1=d1=f1=h1=0; 
	int ye=rand()%10+3;
	int mw=rand()%2;
	while(1){
		g++;
		cout<<"你要出什么?\n";
		cp("1.玉、2.防、3.闪、4.甩剑、5.哈哈、6.上挂、7.举报\n",1);
		if(c>=2)
			cp("8.盾",3);
		if(a>=1)
			cp("9.戳");
		if(a>=2)
			cp("10.猪",2);
		if(a>=4)
			cp("11.黑洞 12.重拳",2);
		if(a>=1&&c>=1)
			cp("13.斩");
		if(a>=2&&c>=2)
			cp("14.暴击",2);
		if(e>=2)
			cp("15.小电",2);
		if(a>=20)
			cp("16.绝杀",3);
		if(zy>=2)
			cp("17.千年",3);
		if(us>0)
			cp("18.万年",3);
		if(ks>0)
			cp("19.亿年",3);
		if(js>1)
			cp("20.中猪",3);
		if(bs>1)
			cp("21.元气",3);
		et;
		string s;
		cin>>s;//a=玉,b=甩剑,c=防,d=狒狒,e=闪,f=上挂,g=下挂
//h=hh,l=->,r=ff,q=拳,v=击 ,w=电,dd=洞 
		if(s=="1")
			a+=2;
		if(s=="2")
			c+=2;
		if(s=="3")
			e++;
		if(s=="4")
			b++;
		if(s=="6")
			f=1;
		if(s=="8")
		{
			if(c<2){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;
			}
			else c-=2;
		}
		if(s=="9")
		{
			if(a<1)
			{
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;
			}
			else a-=1,zy+=1;
		}
		if(s=="10")
		{
			if(a<2){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;
			}
			else a-=2,js+=1;
		}
		if(s=="11")
		{
			if(a<4){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;
			}
			else a-=4;
		}
		if(s=="12"&&a<4)
		{
			if(a<4){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;
			} 
			else a-=4;
		}
		if(s=="13")
		{
			if(a<1||c<1){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;
			}
			else a-=1,c-=1,bs+=1;
		}
		if(s=="14")
		{
			if(a<=1||c<2){
				cout<<"重来!\n";
				pua;
				cls
				g--;continue;
			}
			else a-=2,c-=2;
		}
		if(s=="15")
		{
			if(e<=1){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;	
			}
			else e-=2;
		}
		if(s=="16")
		{
			if(a<=19){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;	
			}
			else a-=20;
		}
		if(s=="17")
		{
			if(zy<2){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;	
			}
			else zy-=2,us=2;
		}
		if(s=="18")
		{
			if(us<=0){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;	
			}
			else us-=1,ks=2;
		}
		if(s=="19")
		{
			if(ks<=0){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;	
			}
			else ks--;
		}
		if(s=="20")
		{
			if(js<=1){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;	
			}
			else js-=2;
		}
		if(s=="21")
		{
			if(bs<=1){
				cout<<"重来!\n";
				pua;
				cls
				g--;
				continue;	
			}
			else bs-=2;
		}
		if(ks!=0&&s!="19")
			ks--;
		if(us!=0&&s!="18")
			us--;
		if(s=="18"){
			cout<<"入机出了盾\n";
			c1-=2; 
			pua;
			cls
			continue; 
		}
		if(s=="13"&&bs==2&&mw==0){
			cout<<"入机出了盾,盾碎\n";
			c1-=2;
			pua;
			cls;
			continue;
		}
		if(s=="19"||s=="17")
		{
			cout<<"入机出了闪\n";
			e1+=1; 
			pua;
			cls
			continue; 
		}
		if(s=="21")
		{
			if(c1>=2)
			{
				cout<<"入机出了盾,盾碎\n";
				c1-=2;
				pua;
				cls;
				continue;
			}
			else{
				cout<<"你赢了\n";
				cs++;
				pua;
				cls;
				return ; 
			}
		}
		if(a1>=20)
		{
			if(s!="16"){
				cout<<"入机出了绝杀\n你死了\n";
				cs=0;
				pua;
				cls;
				return;
			}
			else{
				cout<<"无事发生~\n";
				a1-=20;
			}
		}
		if(s=="16"){
			if(a1>=4)
			{
				cout<<"入机出了黑洞\n";
				a1+=20;
				continue; 
			}
		}
		if(s=="9"||s=="10"||s=="13"){
			cout<<"入机出了防\n";
			c1+=2;
			pua;
			cls;
			continue;
		} 
		if(s=="6")
		{
			cout<<"入机出了举报\n你死了\n";
			cs=0;
			pua;
			cls;
			return;
		}
		if(g==1)
		{
			cout<<"入机出了玉\n";
			a1+=2;
			pua;
			cls;
			continue;
		}if(s=="3"&&a1>=2)
		{
			cout<<"入机出了猪\n你死了\n";
			cs=0;
			pua;
			cls;
			return;
		}if(s=="5"&&a1>=1)
		{
			cout<<"入机出了戳\n你死了\n";
			cs=0;
			pua;
			cls;
			return;
		}if(s=="12"||s=="14"||s=="20")
		{
			cout<<"入机出了哈哈\n你死了\n";
			cs=0;
			pua;
			cls;
			return;
		}if((s=="4"||s=="1")&&a1>=1)
		{
			cout<<"入机出了戳\n你死了\n";
			cs=0;
			pua;
			cls;
			return;
		}if(s=="8"&&a1>=1)
		{
			cout<<"入机出了戳\n";
			pua;
			cls;
			continue;
		}
		if(s=="16")
		{
			cout<<"你赢了\n";
			cs++;
			pua;
			cls;
			return ; 
		}
		if(g>=ye&&a>=4)
		{
			cout<<"入机出了重击\n你死了\n";
			cs=0;
			pua;
			cls;
			return;
		}
		else{
			if(g%3==0)
			{
				cout<<"入机出了防\n";
				c1+=2;
				pua;
				cls;
				continue;
			}
			cout<<"入机出了玉\n";
			a1+=2;
			pua;
			cls;
			continue;
		}
		pua;
		cls;
	}
	return;
}
void kkksc03()
{
	gz();
	cout<<"你当前连胜场数为"<< cs<<endl;
	if(kg==1)
	{
		sc();
		kkksc03();
	}
	else if(cs>=3)
	{
		cp("你可以和Boss---ykl决一死战了\n",16,0,1);
		cls;
		rj(); 
		kkksc03();
	}
	else {
		cout<<"还来吗?\n1(是) 2(否)\n";
		int vk;
		cin>>vk;
		if(vk==1)
			xrj();
		kkksc03();
	}
}
int main(){
	kkksc03(); 
	return 0;
}