C++RPG小游戏 彩色版
这是一款RPG类型(角色扮演)小游戏,游戏是作者辛苦打出来的,代码不难,但很麻烦。游戏内无void,适合新手看一看,游戏内有一点bug,但并不影响游戏的体验,这个游戏是作者刚学编程不久做的,当时void什么的还不会用,所以代码会看起来有点笨拙,代码总共2400多行,如果觉得好的话可以一键三连哦!
-------------------------------------------------------分割君-----------------------------------------------------
#include<iostream>
#include<conio.h>
#include<windows.h>
#include<stdlib.h>
#include<stdio.h>
#include<time.h>
#include<string.h>
using namespace std;
int main()
{
int o,j,p,n,sh=5,sm=40,dm=0;
long long jb=0,bs=0,lj=0,sj=0,emzr=0,hyj=0,jssj=0,pgj=0,szj=0,hjj=0,zspf=0,hy=0,hfhzj=0,bd=1,ylb=1,zd=1,tnt=1;
system("color 3F");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_BLUE);
Sleep(400);
cout<<" 这";
Sleep(400);
cout<<"是";
Sleep(400);
cout<<"一";
Sleep(400);
cout<<"个";
Sleep(400);
cout<<"勇";
Sleep(400);
cout<<"者";
Sleep(400);
cout<<"的";
Sleep(400);
cout<<"世";
Sleep(400);
cout<<"界";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_GREEN);
Sleep(400);
cout<<" 你";
Sleep(400);
cout<<"想";
Sleep(400);
cout<<"来";
Sleep(400);
cout<<"挑";
Sleep(400);
cout<<"战";
Sleep(400);
cout<<"一";
Sleep(400);
cout<<"下";
Sleep(400);
cout<<"吗";
Sleep(400);
cout<<"? 制作用时:5小时\n";
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_RED);
Sleep(400);
cout<<" 确";
Sleep(400);
cout<<"认";
Sleep(400);
cout<<"输";
Sleep(400);
cout<<"入";
Sleep(400);
cout<<"1,";
Sleep(400);
cout<<"否";
Sleep(400);
cout<<"则";
Sleep(400);
cout<<"输";
Sleep(400);
cout<<"入";
Sleep(400);
cout<<"2";
cin>>o;
if(o==2)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_RED);
cout<<"你不行啊!\n";
}
if(o==1)
{
zcd:
for(;;)
{
system("color 3F");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<" \n";
cout<<" ----------------*主菜单*---------------- 如果你是新手,请在主菜单输入‘5 ’\n";
cout<<" |1.移动 2.查看背包 3.回血 4.战斗 5.其他| 进入其他,在其他里输入数字‘2 ’ \n";
cout<<" --------------祝您玩的开心-------------- 进入游戏相关信息,了解游戏规则 \n";
cout<<" \n";
cin>>o;
if(o==1)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto yd;
}
if(o==2)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto ckbb;
}
if(o==3)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto hx;
}
if(o==4)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto zd;
}
if(o==5)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto qt;
}
yd:
system("color 3F");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_GREEN);
cout<<" -------------*请选择*------------------------- \n";
cout<<" | 1.铁匠铺 2.盔甲铺 3.技能店 4.返回主菜单 | \n";
cout<<" -----------祝您玩的开心----------------------- \n";
cin>>j;
if(j==1)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto tjp;
}
if(j==2)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto kjp;
}
if(j==3)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto jnd;
}
if(j==4)
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"\n电脑正在拼命加载中...\n\n\n";
Sleep(1000);
goto zcd;
}
tjp:
system("color 3F");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_BLUE);
cout<<" -------------*铁匠铺*------------------------------------------------------------------------------------- \n";
cout<<" | 1.匕首(50金币,+2伤害)2.利剑(80金币,+3伤害)3.圣剑(120金币,+5伤害)4.恶魔之刃(200金币,+7伤害) | \n";
cout<<" | 5.火焰剑(300金币,+10伤害)6.绝世圣剑(500金币,+20伤害) 7.返回主菜单 | \n";
cout<<" ------------------------------祝您玩的开心---------------------------------------------------------------- \n";
cin>>p;
if(p==1)
{
if(jb>=50)
{
bs++;jb-=50;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了匕首,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==2)
{
if(jb>=80)
{
lj++;jb-=80;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了利剑,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==3)
{
if(jb>=120)
{
sj++;jb-=120;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了圣剑,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==4)
{
if(jb>=200)
{
emzr++;jb-=200;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了恶魔之刃,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==5)
{
if(jb>=300)
{
hyj++;jb-=300;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了火焰剑,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==6)
{
if(jb>=500)
{
jssj++;jb-=500;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了绝世圣剑,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==7)
{
goto zcd;
}
kjp:
system("color 3F");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_BLUE);
cout<<" -------------*盔甲铺*--------------------------------------------------------------------------------------------- \n";
cout<<" | 1.皮革甲(50金币,+4防御)2.锁子甲(80金币,+6防御)3.黄金甲(120金币,+10防御)4.钻石披风(200金币,+14防御) | \n";
cout<<" | 5.火焰甲(300金币,+20防御)6.火凤凰之甲(500金币,+40防御) 7.返回主菜单 | \n";
cout<<" ------------------------------祝您玩的开心------------------------------------------------------------------------ \n";
cin>>p;
if(p==1)
{
if(jb>=50)
{
pgj++;jb-=50;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了皮革甲,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==2)
{
if(jb>=80)
{
szj++;jb-=80;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了锁子甲,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==3)
{
if(jb>=120)
{
hjj++;jb-=120;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了黄金甲,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==4)
{
if(jb>=200)
{
zspf++;jb-=200;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了钻石披风,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==5)
{
if(jb>=300)
{
hy++;jb-=300;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了火焰甲,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==6)
{
if(jb>=500)
{
hfhzj++;jb-=500;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_RED | FOREGROUND_GREEN | BACKGROUND_BLUE| BACKGROUND_GREEN| BACKGROUND_RED);
cout<<"您购买了火凤凰之甲,您现在有"<<jb<<"金币\n";
}
else
{
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),FOREGROUND_INTENSITY |
FOREGROUND_RED);
cout<<"您没有足够的金币\n";
}
Sleep(800);
goto zcd;
}
if(p==7)
{
goto zcd;
}
jnd:
system("color 3F");
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),BACKGROUND_INTENSITY |
FOREGROUND_INTENSITY | BACKGROUND_RED | BACKGROUND_GREEN | BACKGROUND_BLUE |
FOREGROUND_BLUE);
cout<<" -------------*技能店*------------------------ \n";
cout<<" |1.绷带 2.医疗包 3.炸弹 4.手雷 5.返回主菜单 | \n";
cout<<" |150金币 250金币 200金币 300金币 | \n"