今天主要写一个卡片战斗的新功能,随机生成对手的卡片等级(R或SR或SSR),最后决定自己选择什么样的卡片出战,若等级相同则继续出下一张卡,若卡片耗尽或等级小于对方,则战斗结束并失去所有卡片,反之获得所有卡片。
void chouka::fight()
{
int order, level, valueR=0,valueSR=0,valueSSR=0,result=2;
int cardnum = 1 + rand() % 10;
char *s;
system("cls");
cout << "============卡片战斗============" << endl;
cout << "对方有1-10张卡片" << endl;
cout << "若你出的卡片等级小于对方" << endl;
cout << "或者你的卡片耗尽,则失败" << endl;
cout << "若你出的卡片等级大于对方,则胜利" << endl;
cout << "若双方卡片等级相同,则进入下一轮" << endl;
cout << "Good Luck!" << endl;
cout << "================================" << endl;
system("pause");
system("cls");
for (int i = 0; i < cardnum; i++)
{
cout << "============卡片战斗============" << endl;
cout << "对方的选择是 : ???" << endl;
cout << "输入1:R,2:SR,3:SSR" << endl;
cout << "剩余R:" << R << "," << "剩余SR:" <<SR<<","<< "剩余SSR:" << SSR << endl;
cout << "================================" << endl;
cout << "你的选择是:";
cin >> order;
level = 1 + rand() % 3;
if (level == 1)valueR++;
else if (level == 2)valueSR++;
else valueR++;
switch (order)
{
case 1:
valueR++;
R--;
if (level > 1)result = 0;
else if (level == 1)
{
cout << "============卡片战斗============" << endl;
cout << "对方的选择是 : R" << endl;
cout << "平手!" << endl;
cout << "剩余R:" << R << "," << "剩余SR:" << SR << "," << "剩余SSR:" << SSR << endl;
cout << "================================" << endl;
system("pause");
system("cls");
if (i + 1 == cardnum)result = 1;
break;
}
case 2:
valueSR++;
SR--;
if (level > 2)result = 0;
else if (level == 2)
{
cout << "============卡片战斗============" << endl;
cout << "对方的选择是 : SR" << endl;
cout << "平手!" << endl;
cout << "剩余R:" << R << "," << "剩余SR:" << SR << "," << "剩余SSR:" << SSR << endl;
cout << "================================" << endl;
system("pause");
system("cls");
if (i + 1 == cardnum)result = 1;
break;
}
else result = 1;
case 3:
valueSSR++;
SSR--;
if (level == 3)
{
cout << "============卡片战斗============" << endl;
cout << "对方的选择是 : SSR" << endl;
cout << "平手!" << endl;
cout << "剩余R:" << R << "," << "剩余SR:" << SR << "," << "剩余SSR:" << SSR << endl;
cout << "================================" << endl;
system("pause");
system("cls");
if (i + 1 == cardnum)result = 1;
break;
}
else result = 1;
}
if (result == 1)
{
system("cls");
R += valueR;
SR += valueSR;
SSR += valueSSR;
system("cls");
if (level == 1)s = "R";
else if(level==2)s = "SR";
else s = "SSR";
cout << "============卡片战斗============" << endl;
cout << "对方的选择是 : " << s << endl;
cout << "You Win!!" << endl;
cout << "剩余R:" << R << "," << "剩余SR:" << SR << "," << "剩余SSR:" << SSR << endl;
cout << "================================" << endl;
break;
}
if (result == 0)
{
system("cls");
if (level == 1)s = "R";
else if (level == 2)s = "SR";
else s = "SSR";
cout << "============卡片战斗============" << endl;
cout << "对方的选择是 : " << s << endl;
cout << "You Lose!!" << endl;
cout << "剩余R:" << R << "," << "剩余SR:" << SR << "," << "剩余SSR:" << SSR << endl;
cout << "================================" << endl;
break;
}
}
}
写了半天也没写完…后面再慢慢补