自制游戏Zero bound 0.0.1
2024-08-06 21:52:05
发布于:广东
最近看了Blown sand的AC荣耀,自己也在集训的空闲时间做了个文字游戏“Zero bound”(意思是零界,瞎起的),把代码复制到dev就能玩了(初学者作品,不喜勿喷)
切记:千万不要输入任何字符或字母,只输入数字就可以了,这是一个bug,以后有空修
#include <bits/stdc++.h> //yc 镁誓嘬著
using namespace std;
int main(){
int passwordST=0,coins=0;
while(true){
passwordST=0;
cout<<"输入'1'开始游戏:";
cin>>passwordST;
if(passwordST==1){
break;
}
else{
cout<<"输入错误,请重新输入"<<endl<<endl;
}
continue;
}
while(true){
system("cls");
int weaponNUM=1,roleIN=0,moduleNUM=0,moduleN2=0,moduleST=0;
int bloodVO=100,enemyBL=100,skillNUM=0,enemyDAM=20,enemySK=0,enemyNUM=0;
int alreadyDE=1,havingRO={1};
while(true){
weaponNUM=1;
moduleNUM=0;
moduleN2=0;
moduleST=0;
//大厅
cout<<"已进入大厅,输入'1'开始匹配,输入'2'进入商店:";
cin>>moduleST;
if(moduleST==1){
break;
}
else if(moduleST==2){
//购买装备
system("cls");
cout<<"硬币数量:"<<coins;
cout<<endl<<"1:商店 2:背包"<<endl;
cout<<"请输入模块编号:";
cin>>moduleNUM;
//皮肤商店
if(moduleNUM==1){
while(true){
cout<<endl<<"输入角色编号即可购买[输入0退出]:";
cout<<"1.卢克 2.莫凯:";
moduleN2=0;
cin>>moduleN2;
if(moduleN2==0){
system("cls");
break;
}
else if(moduleN2==1){
cout<<"您已拥有此角色"<<endl;
continue;
}
else{
cout<<"没有此编号"<<endl;
continue;
}
system("cls");
continue;
}
}
//背包商店
else if(moduleNUM==2){
while(true){
cout<<endl<<"已上阵角色:卢克";
cout<<endl<<"已拥有角色:"<<"[输入角色编号装备此角色,输入0退出]:";
moduleN2=0;
cin>>moduleN2;
if(moduleN2==0){
cout<<endl;
break;
}
else if(moduleN2==alreadyDE){
cout<<"该角色已上阵"<<endl;
continue;
}
else{
cout<<"没有此编号"<<endl;
continue;
}
}
system("cls");
continue;
}
else{
cout<<"没有此模块编号"<<endl<<endl;
continue;
}
}
else{
cout<<"没有此模块编号"<<endl<<endl;
continue;
}
}
system("cls");
while(true){
//角色选择
roleIN=0;
cout<<"请选择您的角色编号"<<endl;
cout<<weaponNUM<<"."<<"卢克"<<endl;
cout<<"请输入角色编号:";
cin>>roleIN;
if(roleIN==1){
break;
}
else{
cout<<"没有此角色编号"<<endl<<endl;
continue;
}
}
system("cls");
skillNUM=0;
//开始战斗
srand(time(0));
enemyNUM=rand()%2;
cout<<"开始战斗!"<<endl<<"匹配成功,您的对手是";
if(enemyNUM==0){
cout<<"弗雷德"<<endl<<endl;
}
else if(enemyNUM==1){
cout<<"史密斯"<<endl<<endl;
}
while(true){
//判断胜负
if(enemyBL<=0&&bloodVO>0){
cout<<"恭喜您,获得本局胜利,获得100硬币"<<endl<<endl;
coins=coins+100;
break;
}
if(enemyBL<0&&bloodVO<0){
cout<<"本局为平局,不分胜负,获得60硬币"<<endl<<endl;
coins=coins+60;
break;
}
if(bloodVO<=0&&enemyBL>0){
cout<<"很遗憾,本局您战败了,获得50硬币"<<endl<<endl;
coins=coins+50;
break;
}
//血量报告
if(weaponNUM==1){
cout<<"您的血量是:"<<bloodVO<<endl;
}
cout<<"敌人的血量是:"<<enemyBL<<endl<<endl;
while(true){
//玩家攻击
cout<<"请选择您要使用的技能编号:1.尖锋之刃 2.天神盾牌 3.夺命匕首"<<endl;
skillNUM=0;
cin>>skillNUM;
if(skillNUM==1){
enemyBL=enemyBL-15;
cout<<"您的'尖锋之刃'对敌人造成了15点伤害"<<endl;
break;
}
else if(skillNUM==2){
cout<<"您的'天神盾牌'将在此回合生效,将伤害抵消60%"<<endl;
break;
}
else if(skillNUM==3){
enemyBL=enemyBL-30;
cout<<"您的'夺命匕首'对敌人造成了30点伤害"<<endl;
break;
}
else{
cout<<"没有此技能编号"<<endl<<endl;
continue;
}
}
//敌人攻击
if(bloodVO>0&&enemyDAM>0){
srand(time(0));
enemySK=rand()%2;
if(enemyNUM==0){
if(enemySK==0){
enemyDAM=20;
}
else if(enemySK==1){
enemyDAM=15;
}
}
else if(enemyNUM==1){
if(enemySK==0){
enemyDAM=30;
}
else if(enemySK==1){
enemyDAM=5;
}
}
if(skillNUM==2){
enemyDAM=enemyDAM-enemyDAM/6;
bloodVO=bloodVO-round(enemyDAM);
}
else{
bloodVO=bloodVO-enemyDAM;
}
if(enemyNUM==0){
if(enemySK==0){
cout<<"敌人使用了'双枪攻击'技能,对您造成"<<enemyDAM<<"点伤害"<<endl<<endl;
}
else if(enemySK==1){
cout<<"敌人使用了'极品单枪'技能,对您造成"<<enemyDAM<<"点伤害"<<endl<<endl;
}
}
else if(enemyNUM==1){
if(enemySK==0){
cout<<"敌人使用了'超能声波'技能,对您造成"<<enemyDAM<<"点伤害"<<endl<<endl;
}
else if(enemySK==1){
cout<<"敌人使用了'灵气之拳'技能,对您造成"<<enemyDAM<<"点伤害"<<endl<<endl;
}
}
}
}
while(true){
passwordST=0;
cout<<"输入'1'返回大厅:";
cin>>passwordST;
if(passwordST==1){
break;
}
else{
cout<<"输入错误,请重新输入"<<endl<<endl;
}
continue;
}
system("cls");
continue;
}
return 0;
}
全部评论 3
这玩游戏多是一件美事啊。
2024-08-07 来自 浙江
1美事,太美式了
2024-08-07 来自 广东
0
还可以
2024-08-07 来自 浙江
0不是AC君本人
2024-08-07 来自 浙江
0
有亿点点bug,比如输入数字显示没有编号之类,都是没做完
2024-08-06 来自 广东
0
有帮助,赞一个