全面更新
这段代码是一个基于控制台的文字冒险游戏的源代码。游戏通过控制台输出文字和数字来展现游戏的各种信息和交互。代码中定义了玩家的属性和装备信息,包括玩家的血量、等级、经验值,以及各种装备的属性和名称。游戏包括了打怪、装备、附魔、商店等功能,玩家可以通过选择不同的操作来进行游戏。打怪功能中,玩家可以选择不同的怪物进行战斗,战斗的结果会影响玩家的经验和金币。装备功能中,玩家可以查看和选择不同的装备,提升自己的战斗力。附魔功能可以消耗经验值进行附魔,提升装备的属性。商店功能中,玩家可以购买不同的装备和血瓶来提升自己的实力。整个游戏的实现逻辑比较简单,通过控制台的输出和输入来实现游戏的各种功能和交互。游戏中包含了简单的战斗逻辑、装备升级和商店购买等元素,玩家可以通过不断的操作和冒险来提升自己的等级和装备,探索游戏世界的奥秘。整体来看,这段代码实现了一个基于控制台的文字冒险游戏的基本功能,玩家可以通过代码中提供的操作来体验游戏的乐趣和挑战。
#include <bits/stdc++.h>
#include <windows.h>
#include <conio.h>
#include <stdlib.h>
#include <stdio.h>
#define random(a,b) (rand()%(b-a+1)+a)
using namespace std ;
string name;
long long xue=50,dz=1,jy=999,jian=0;
int shang[7]= {2,4,7,10,16,34,50};
int c;
int coin=5;
int jyi=0;
int j2=0,j3=0,j4=0,j5=0,j6=0,j7=0,j8=0;
string jia[8]= {"锋利","爆炸","火焰","强化","穿甲","雷霆","震撼","连击"};
// 2 4 3 1 3 5 1 2次
//锋利 爆炸 火焰 强化 穿甲 雷霆 震撼 连击
//1 2 3 4 5 6 7 8
string wuqi[7]= {"木剑","铁剑","钢剑","地岩钢剑","龙钢剑","寒星陨铁剑","九天陨星剑"};
// 2 4 7 10 16 34 50
//木剑 铁剑 钢剑 地岩钢剑 龙钢剑 寒星陨铁剑 九天陨星剑
// 1 2 3 4 5 6 7
void sc(string text, int shi) {
for (int i=0; i<text.size(); i++) {//侵权必究
cout<<text[i];
Sleep(shi);
}
return;
}
int main() {
srand((unsigned)time(NULL));
string text = "避难所世界";
sc(text,25);//侵权必究
cout<<endl;
system("pause") ;
system("cls");
cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl;
cout<< " 加载中..."<<endl;
cout<<" ";
text = "▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉▉";
sc(text,25);
cout<<endl;
system("cls");
cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;
printf(" 健康游戏忠告\n");
printf(" 抵制不良游戏,拒绝盗版游戏。\n");
printf(" 注意自我保护,谨防上当受骗。\n");
printf(" 适度游戏益脑,沉迷游戏伤身。\n");
printf(" 合理安排时间,享受健康生活。\n");
Sleep(2*1000);
system("cls");//侵权必究
cout<<"输入你的名字" <<endl;
cin>>name;
system("cls");
while(1) {
cout<<"玩家:"<<name<<endl;
cout<<"血量:"<<xue<<endl;
cout<<"等级:"<<dz<<"(还有"<<3*dz-jy<<"经验升级)"<<endl;//侵权必究
cout<<"现有经验:"<<jy<<endl;
cout<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl<<endl;
cout<<"1.打怪"<<endl;
cout<<"2.装备"<<endl;
cout<<"3.改造"<<endl;
cout<<"4.商店"<<endl;
cin>>c;
system("cls");
if(c==1) {
system("cls"); //清除输出字符
printf("请选择副本:\n");
printf("________________________________\n");
printf("| 1.史莱姆森林 |\n");
printf("| 2.恶魔城堡 |\n");
printf("| 3.314试验禁地 |\n");
printf("| 4.遗失之地 |\n");
printf("| |\n");
printf("| 0.退出选择副本模式 |\n");
printf("|______________________________|\n");
cin>>c;
system("cls"); //清除输出字符
if(c==1) {//侵权必究
printf("你遇到了一只绿色史莱姆。\n");
printf("1.攻击2.逃跑\n");
cin>>c;
if(c==1) {
cout<<"你对它造成了"<<shang[jian]+jyi+j2+j3+j4+j5+j6+j7<<"点伤害。"<<endl;
printf("它死了\n");
jy=jy+10;
cout<<"你获得了"<<10<<"点经验"<<endl;
coin+=2;//侵权必究
cout<<"你获得了"<<2<<"金币"<<endl;
} else if(c==2) {
printf("逃跑成功!\n");
} else {//侵权必究
printf("请不要乱输!!\n");
}
} else if(c==2) {
int suiji=random(1,100);
if(suiji>=70) {
cout<<"你遇到了一个炎魔骨龙"<<endl<<endl<<endl<<endl<<endl<<endl;
cout<<"你是否要查看炎魔骨龙的生物档案 1.要 2.否" <<endl;
int shuru;
cin>>shuru;
if(shuru==1) {
cout<<"生物档案:炎魔骨龙(Emberbone Drake)分类:亡灵/火系混合体(半实体半灵体)威胁等级:S级(高危)生理特征外形:由焦黑的巨龙骸骨构成,骨骼缝隙中流淌着熔岩般的能量,体表覆盖着永不熄灭的幽蓝色火焰。头骨眼眶内跃动两团灵魂之火,翼膜为半透明的火焰波纹,飞行时洒落火星。体型:体长20-30米,翼展可达40米,骨骼密度极高,重量仅为活体巨龙的60%。特殊器官:熔核之心:胸腔内悬浮一颗燃烧的结晶化心脏,核心温度超过3000℃,可喷射「熔魂吐息」(瞬间汽化钢铁)。蚀火骨髓:骨骼中空,填充压缩火元素,受伤时会爆炸性释放(类似火山喷发)。";
system("pause");
system("cls");
system("color 87") ;
}
//侵权必究
int dx=40;
printf("1.攻击2.逃跑\n");
cin>>c;
if(c==1) {
int x=xue;
while(1) {
cout<<"你对它造成了"<<shang[jian]+jyi+j2+j3+j4+j5+j6+j7<<"点伤害。"<<endl;
dx-=(shang[jian]+jyi+j2+j3+j4+j5+j6+j7);
if(dx<=0) {
cout<<"他没了";
jy+=100;
cout<<"你获得了"<<100<<"点经验"<<endl;
coin+=10;
cout<<"你获得了"<<10<<"金币"<<endl;
break;
}
cout<<"你受了"<<3<<"点伤害。"<<endl;
x-=3;
if(x<=0) {//侵权必究
cout<<"你没了";//侵权必究
break;
}
}//侵权必究
system("pause");
system("cls");
system("color 87") ;
} else if(c==2) {
printf("逃跑成功!\n");
} else {
printf("请不要乱输!!\n");
}
} else {
cout<<"你遇到了一个炎魔骷髅"<<endl<<endl<<endl<<endl<<endl<<endl;
cout<<"你是否要查看炎魔骷髅的生物档案 1.要 2.否" <<endl;
int shuru;
cin>>shuru;
if(shuru==1) {
cout<<"炎魔骷髅又称火骷髅、恶魔骷髅,据说是以前在被遗忘的城堡中迷路,记忆慢慢被遗失,最后所有的遗失完全被遗忘的探险家,慢慢腐化,由于城堡的某种特殊因素与其融合最后化为火骷髅";
system("pause");
system("cls");//侵权必究
system("color 87") ;
}
int dx=3;//侵权必究
printf("1.攻击2.逃跑\n");
cin>>c;
if(c==1) {
int x=xue;
while(1) {
cout<<"你对它造成了"<<shang[jian]+jyi+j2+j3+j4+j5+j6+j7<<"点伤害。"<<endl;
dx-=(shang[jian]+jyi+j2+j3+j4+j5+j6+j7);
if(dx<=0) {
cout<<"他没了";//侵权必究
jy+=10;