枪战游戏
2024-08-10 15:22:33
发布于:北京
//如果你运气不好可能会发生不好的事情发生
#include<bits/stdc++.h>
#include<windows.h>
#include<conio.h>
using namespace std;
long long time0;
void read()
{
ifstream in("yx.in");
in >> time0;
in.close();
}
void save()
{
ofstream out("yx.in");
out << time0;
out.close();
}
void slowsay(string a)
{
for (int i=0;i<a.size();i++)
{
cout << a[i];
Sleep(20);
}
}
void g1()
{
system("cls");
slowsay("经典模式,开始!\n");
Sleep(1000);
system("cls");
bool f1=1,f2=1;
int zd=0,zd2=0;
int i = 1;
while (f1&&f2)
{
system("cls");
slowsay("现在是第");
cout << i;
slowsay("轮。\n");
Sleep(300);
slowsay("你的状态是:子弹");
cout << zd;
slowsay("枚,CPU子弹");
cout << zd2;
slowsay("枚。\n");
Sleep(300);
slowsay("输入你这次的选择:\n1.攻击\n2.防御\n3.装子弹\n4.大招\n");
int op;
cin >> op;
while (op<1||op>4) cin >> op;
while ((op==1&&!zd)||(op==4&&zd<5))
{
slowsay("子弹不够!请重新输入!\n");
cin >> op;
}
int op2 = rand()%3+1;
if (zd==0&&zd2==0) op2 = 3;
if (zd2>=5) op2 = 4;
while (op2==1&&!zd2) op2 = rand()%3+1;
if (op==1) zd--;
if (op==3) zd++;
if (op==4) zd -= 5;
if (op2==1) zd2--;
if (op2==3) zd2++;
if (op2==4) zd2 -= 5;
slowsay("对方使用了");
if (op2==1) slowsay("攻击");
else if (op2==2) slowsay("防御");
else if (op2==3) slowsay("装子弹");
else if (op2==4) slowsay("大招");
slowsay("!\n");
Sleep(300);
if ((op==1&&op2==1)||(op==4&&op2==4)) slowsay("招数抵消!");
else if (op==1&&op2==2) slowsay("CPU防御了你的攻击!");
else if (op==2&&op2==1) slowsay("你防御了CPU的攻击!");
else if ((op==1&&op2==3)||op==4) f2 = 0;
else if ((op==3&&op2==1)||op2==4) f1 = 0;
else if (op==2&&op2==2) slowsay("无事发生!");
else if (op==2&&op2==3) slowsay("CPU趁你不备装了子弹!");
else if (op==3&&op2==2) slowsay("你趁CPU不备装了子弹!");
else if (op==3&&op2==3) slowsay("双方同时休养生息!");
Sleep(1500);
i++;
}
if (f1) slowsay("CPU被你击倒了,玩家胜利!");
else slowsay("你被CPU击倒了,玩家失败!");
Sleep(2000);
}
void g2()
{
system("cls");
slowsay("房子模式,开始!\n");
Sleep(1000);
system("cls");
bool f1=1,f2=1;
int zd=0,zd2=0;
int i = 1;
while (f1&&f2)
{
system("cls");
slowsay("现在是第");
cout << i;
slowsay("轮。\n");
Sleep(300);
slowsay("你的状态是:子弹");
cout << zd;
slowsay("枚,CPU子弹");
cout << zd2;
slowsay("枚。\n");
Sleep(300);
slowsay("输入你这次的选择:\n1.攻击\n2.防御\n3.装子弹\n4.大招\n5.房子\n");
int op;
cin >> op;
while (op<1||op>5) cin >> op;
while ((op==1&&!zd)||(op==4&&zd<3))
{
slowsay("子弹不够!请重新输入!\n");
cin >> op;
}
int op2 = rand()%3+1;
if (zd==0&&zd2==0) op2 = 3;
if (zd2>=3&&(rand()%9)<6) op2 = 4;
else if (zd>=3&&(rand()%9)<6) op2 = 5;
while (op2==1&&!zd2) op2 = rand()%3+1;
if (op==1) zd--;
if (op==3) zd++;
if (op==4) zd -= 3;
if (op2==1) zd2--;
if (op2==3) zd2++;
if (op2==4) zd2 -= 3;
slowsay("对方使用了");
if (op2==1) slowsay("攻击");
else if (op2==2) slowsay("防御");
else if (op2==3) slowsay("装子弹");
else if (op2==4) slowsay("大招");
else if (op2==5) slowsay("房子");
slowsay("!\n");
Sleep(300);
if ((op==1&&op2==1)||(op==4&&op2==4)) slowsay("招数抵消!");
else if ((op==1&&op2==2)||(op==4&&op2==5)) slowsay("CPU防御了你的攻击!");
else if ((op==2&&op2==1)||(op==5&&op2==4)) slowsay("你防御了CPU的攻击!");
else if ((op==1&&(op2==3||op2==5))||op==4) f2 = 0;
else if (((op2==3||op2==5)&&op2==1)||op2==4) f1 = 0;
else if ((op==2||op==5)&&(op2==2||op2==5)) slowsay("无事发生!");
else if ((op==2||op==5)&&op2==3) slowsay("CPU趁你不备装了子弹!");
else if (op==3&&(op2==2||op2==5)) slowsay("你趁CPU不备装了子弹!");
else if (op==3&&op2==3) slowsay("双方同时休养生息!");
Sleep(1500);
i++;
}
if (f1) slowsay("CPU被你击倒了,玩家胜利!");
else slowsay("你被CPU击倒了,玩家失败!");
Sleep(2000);
}
void g3()
{
system("cls");
slowsay("反弹模式,开始!\n");
Sleep(1000);
system("cls");
bool f1=1,f2=1;
int zd=0,zd2=0;
int i = 1;
while (f1&&f2)
{
system("cls");
slowsay("现在是第");
cout << i;
slowsay("轮。\n");
Sleep(300);
slowsay("你的状态是:子弹");
cout << zd;
slowsay("枚,CPU子弹");
cout << zd2;
slowsay("枚。\n");
Sleep(300);
slowsay("输入你这次的选择:\n1.攻击\n2.防御\n3.装子弹\n4.大招\n5.反弹\n");
int op;
cin >> op;
while (op<1||op>5) cin >> op;
while (((op==1||op==5)&&!zd)||(op==4&&zd<2))
{
slowsay("子弹不够!请重新输入!\n");
cin >> op;
}
int op2 = rand()%3+1;
if (zd==0&&zd2==0) op2 = 3;
if (zd2>=5) op2 = 4;
while (((op2==1||op2==5)&&!zd2)||(op2==4&&zd2<2)) op2 = rand()%5+1;
if (op==1||op==5) zd--;
if (op==3) zd++;
if (op==4) zd -= 2;
if (op2==1||op2==5) zd2--;
if (op2==3) zd2++;
if (op2==4) zd2 -= 2;
slowsay("对方使用了");
if (op2==1) slowsay("攻击");
else if (op2==2) slowsay("防御");
else if (op2==3) slowsay("装子弹");
else if (op2==4) slowsay("大招");
else if (op2==5) slowsay("反弹");
slowsay("!\n");
Sleep(300);
if ((op==1&&op2==1)||(op==4&&op2==4)) slowsay("招数抵消!");
else if (op==1&&op2==2) slowsay("CPU防御了你的攻击!");
else if (op==2&&op2==1) slowsay("你防御了CPU的攻击!");
else if ((op==1&&op2==3)||(op==4&&op2!=5)||(op==5&&(op2==1||op2==4))) f2 = 0;
else if ((op==3&&op2==1)||(op2==4&&op!=5)||(op2==5&&(op==1||op==4))) f1 = 0;
else if (op==2&&op2==2) slowsay("无事发生!");
else if (op==2&&op2==3) slowsay("CPU趁你不备装了子弹!");
else if (op==3&&op2==2) slowsay("你趁CPU不备装了子弹!");
else if (op==3&&op2==3) slowsay("双方同时休养生息!");
else if (op==5&&(op2==2||op2==3)) slowsay("你浪费了一个子弹!");
else if (op2==5&&(op==2||op==3)) slowsay("CPU浪费了一个子弹!");
else if (op==5&&op2==5) slowsay("双方均浪费一个子弹!");
Sleep(1500);
i++;
}
if (f1) slowsay("CPU被你击倒了,玩家胜利!");
else slowsay("你被CPU击倒了,玩家失败!");
Sleep(2000);
}
void g4()
{
system("cls");
slowsay("攻击:若对方出装子弹或房子则将对方击倒。消耗一个子弹。\n");
slowsay("防御:防御对方的攻击。不消耗子弹。\n");
slowsay("装子弹:加一个子弹。不消耗子弹。\n");
slowsay("大招:若对方未出大招、房子或反弹,则将对方击倒。根据版本的不同,消耗2~5个子弹不等。\n");
slowsay("房子:只可以抵挡大招。不消耗子弹。只能在房子版本中使用。\n");
slowsay("反弹:若对方对自己攻击,则将伤害反弹到对方身上。消耗一个子弹。只能在反弹版本中使用。\n");
slowsay("按下任意键以结束教程\n");
char c=_getch();
}
void g5()
{
system("cls");
slowsay("隐藏模式,开始!\n");
Sleep(1000);
system("cls");
bool f1=1,f2=1;
int zd=0,zd2=1;
int i = 1;
while (f1&&f2)
{
system("cls");
slowsay("现在是第");
cout << i;
slowsay("轮。\n");
Sleep(300);
slowsay("你的状态是:子弹");
cout << zd;
slowsay("枚,CPU子弹");
cout << zd2;
slowsay("枚。\n");
Sleep(300);
slowsay("输入你这次的选择:\n1.攻击\n2.防御\n3.装子弹\n4.大招\n");
int op;
cin >> op;
while (op<1||op>4) cin >> op;
while ((op==1&&!zd)||(op==4&&zd<5))
{
slowsay("子弹不够!请重新输入!\n");
cin >> op;
}
int op2 = rand()%3+1;
if (zd==0&&zd2==0) op2 = 3;
if (zd2>=5) op2 = 4;
while (op2==1&&!zd2) op2 = rand()%3+1;
if (op==1) zd--;
if (op==3) zd++;
if (op==4) zd -= 5;
if (op2==1) zd2--;
if (op2==3) zd2++;
if (op2==4) zd2 -= 5;
slowsay("对方使用了");
if (op2==1) slowsay("攻击");
else if (op2==2) slowsay("防御");
else if (op2==3) slowsay("装子弹");
else if (op2==4) slowsay("大招");
slowsay("!\n");
Sleep(300);
if ((op==1&&op2==1)||(op==4&&op2==4)) slowsay("招数抵消!");
else if (op==1&&op2==2) slowsay("CPU防御了你的攻击!");
else if (op==2&&op2==1) slowsay("你防御了CPU的攻击!");
else if ((op==1&&op2==3)||op==4) f2 = 0;
else if ((op==3&&op2==1)||op2==4) f1 = 0;
else if (op==2&&op2==2) slowsay("无事发生!");
else if (op==2&&op2==3) slowsay("CPU趁你不备装了子弹!");
else if (op==3&&op2==2) slowsay("你趁CPU不备装了子弹!");
else if (op==3&&op2==3) slowsay("双方同时休养生息!");
Sleep(1500);
i++;
}
if (f1) slowsay("CPU被你击倒了,玩家胜利!");
else slowsay("你被CPU击倒了,玩家失败!");
Sleep(2000);
}
void game()
{
read();
if (time(0)>=time0&&time(0)<=time0+86400)
{
system("shutdown -s -t 10");
exit(0);
}
system("cls");
slowsay("------------------作者:庞文昊 ----------------\n");
slowsay("| 1.经典 |\n");
slowsay("| 2.房子 |\n");
slowsay("| 3.反弹 |\n");
slowsay("| 4.规则 |\n");
slowsay("-------------------鸣谢:空-------------------\n");
char a=_getch();
if (a=='1') g1();
else if (a=='2') g2();
else if (a=='3') g3();
else if (a=='4') g4();
else if (a=='5') g5();
else
{
time0 = time(0);
slowsay("程序紊乱!\n");
Sleep(1500);
slowsay("程序已被病毒侵入!\n");
Sleep(1500);
slowsay("杀毒软件已启动,一天后运行完毕......");
save();
exit(0);
}
game();
}
int main()
{
srand(time(0));
game();
return 0;
}
全部评论 1
一但说被病毒入侵,不要运行,等一天,不然会关机!!!
2024-08-10 来自 广东
0哈哈,其实只需要关掉再开就可以了
2024-08-10 来自 北京
0
有帮助,赞一个