基于C++自制屠夫躲貓貓小游戲
更新時間:2024年01月11日 09:51:10 作者:猿神派蒙
這篇文章主要為大家詳細(xì)介紹了如何基于C++自制屠夫躲貓貓小游戲,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
大家好,我是派蒙,我寫了一個《屠夫躲貓貓》的游戲,下面是源代碼:
#include <stdio.h>
#include <conio.h>
#include<bits/stdc++.h>
#include<windows.h>
using namespace std;
string ID[1001];
string Name[1001],Key[1001];
int main(void){
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<"========================================================"<<endl<<endl<<endl;
cout<<" 屠夫躲貓貓"<<endl;
cout<<" Butcher Hide And Seek"<<endl;
Sleep(4000);
ID[0]="VIP000";
Name[0]="派蒙";
Key[0]="MIHOYO";
ID[1]="VIP001";
Name[1]="納西妲";
Key[1]="MIHOYO";
ID[2]="VIP002";
Name[2]="芙寧娜";
Key[2]="MIHOYO";
ID[3]="SVIP666";
Name[3]="原神";
Key[3]="MIHOYO";
int cnt=4;
bool zt=1;
long long I=100000;
string n,m;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
while(1){
system("cls");
bool K=0;
zt=1;
cout<<"========================================================"<<endl;
cout<<"注冊/登錄"<<endl;
cout<<"(本機(jī)注冊的賬戶只能在本機(jī)中使用)"<<endl;
if(zt==1){
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0xF0);
}else if(zt==0){
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
}
cout<<"1.沒有賬號,注冊一個"<<endl;
if(zt==0){
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0xF0);
}else if(zt==1){
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
}
cout<<"2.有賬號,直接登錄" <<endl;
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<"(W/S選擇,Y確定)"<<endl;
int a=getch();
system("cls");
switch(a){
case 'W':zt=1;
case 'S':zt=0;
case 'Y':if(zt==1){
cout<<"========================================================"<<endl;
cout<<"請輸入用戶名:"<<endl;
cin>>Name[cnt];
cout<<"請設(shè)置密碼:"<<endl;
cin>>Key[cnt];
ID[cnt]=I;
I++;
cnt++;
system("cls");
}else if(zt==0){
cout<<"========================================================"<<endl;
cout<<"用戶名/ID:";
cin>>n;
cout<<"密碼:";
cin>>m;
int cnt1;
for(int i=0;i<=cnt;i++){
if(n==Name[i]&&m==Key[i]||n==ID[i]&&m==Key[i]){
K=1;
cnt1=i;
break;
}
}
if(K==1){
system("cls");
cout<<"========================================================"<<endl<<endl;
cout<<" 抵制不良游戲,拒絕盜版游戲。"<<endl;
cout<<" 注意自我保護(hù),謹(jǐn)防受騙上當(dāng)。"<<endl;
cout<<" 適度游戲益腦,沉迷游戲傷身。"<<endl;
cout<<" 合理安排時間,享受健康生活。"<<endl<<endl;
cout<<" 初始化資源中..."<<endl;
int n=20;
cout<<" _____________________"<<endl;
cout<<" ";
while(n--){
cout<<"█";
Sleep(300);
}
while(1){
system("cls");
cout<<"========================================================"<<endl;
cout<<"□"<<Name[cnt1]<<endl;
cout<<"選擇模式:(輸入對應(yīng)中文)"<<endl;
string out="開始游戲";
for(int i=0;i<=7;i+=2){
cout<<out[i]<<out[i+1];
Sleep(500);
}
cout<<endl;
out="退出登錄";
for(int i=0;i<=7;i+=2){
cout<<out[i]<<out[i+1];
Sleep(500);
}
cout<<endl;
out="修改資料";
for(int i=0;i<=7;i+=2){
cout<<out[i]<<out[i+1];
Sleep(500);
}
cout<<endl;
while(1){
string n;
cin>>n;
if(n=="開始游戲"){
system("cls");
cout<<"========================================================"<<endl;
cout<<"請選擇躲藏位置:(輸入對應(yīng)中文)"<<endl;
cout<<"床底下/衣柜里/窗簾后/馬桶里/桌底下/沙發(fā)底/沙發(fā)后/原地不動"<<endl;
cin>>n;
int Location;
if(n=="床底下"){
Location=0;
}else if(n=="衣柜里"){
Location=1;
}else if(n=="窗簾后"){
Location=2;
}else if(n=="馬桶里"){
Location=3;
}else if(n=="桌底下"){
Location=4;
}else if(n=="沙發(fā)底"){
Location=5;
}else if(n=="沙發(fā)后"){
Location=6;
}else if(n=="原地不動"){
Location=7;
}
bool died=0;
for(int cnt=1;cnt<=6;cnt++){
system("cls");
cout<<"========================================================"<<endl;
cout<<"第";
Sleep(1000);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x04);
cout<<cnt;
Sleep(1000);
SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE), 0x02);
cout<<"回";
Sleep(1000);
cout<<"合"<<endl;
Sleep(2000);
cout<<"噓,屠夫來了。 你的位置:";
if(Location==0){
cout<<"床底下\n";
}else if(Location==1){
cout<<"衣柜里\n";
}else if(Location==2){
cout<<"窗簾后\n";
}else if(Location==3){
cout<<"馬桶里\n";
}else if(Location==4){
cout<<"桌底下\n";
}else if(Location==5){
cout<<"沙發(fā)底\n";
}else if(Location==6){
cout<<"沙發(fā)后\n";
}
Sleep(1000);
if(Location==7){
cout<<"由于你沒有躲藏,你被屠夫發(fā)現(xiàn)了。你死了。";
died=1;
Sleep(4000);
break;
}
int go=rand()%6;
if(go==Location){
cout<<"你被屠夫抓到了,你死了。"<<endl;
died=1;
break;
Sleep(4000);
system("cls");
}else{
cout<<"屠夫看向了";
if(go==0){
cout<<"床底下";
}else if(go==1){
cout<<"衣柜里";
}else if(go==2){
cout<<"窗簾后";
}else if(go==3){
cout<<"馬桶里";
}else if(go==4){
cout<<"桌底下";
}else if(go==5){
cout<<"沙發(fā)底";
}else if(go==6){
cout<<"沙發(fā)后";
}
Sleep(1000);
cout<<",他抓住了一名玩家,一人被淘汰。";
Sleep(3000);
system("cls");
}
}
if(died==1){
break;
}else{
system("cls");
cout<<"======================================================="<<endl;
cout<<"你存活到了最后,你贏了!";
Sleep(3000);
system("cls");
}
}else if(n=="退出登錄"){
cout<<"======================================================="<<endl<<endl;
cout<<" 正在退出……"<<endl;
Sleep(5000);
system("cls");
break;
}else if(n=="修改資料"){
cout<<"======================================================="<<endl<<endl;
cout<<"請選擇要修改的選項"<<endl;
out="昵稱";
for(int i=0;i<=7;i+=2){
cout<<out[i]<<out[i+1];
Sleep(500);
}
cout<<endl;
out="密碼";
for(int i=0;i<=7;i+=2){
cout<<out[i]<<out[i+1];
Sleep(500);
}
cout<<endl;
cin>>n;
if(n=="昵稱"){
system("cls");
cout<<"======================================================="<<endl;
cout<<"輸入新昵稱:";
cin>>n;
Name[cnt1]=n;
system("cls");
cout<<"======================================================="<<endl;
cout<<"修改成功!";
}else if(n=="密碼"){
system("cls");
cout<<"======================================================="<<endl;
cout<<"輸入舊密碼:";
cin>>n;
if(n==Key[cmt1]){
system("cls");
cout<<"======================================================="<<endl;
cout<<"輸入新密碼"<<endl;
cin>>n;
Key[cnt1]=n;
cout<<"修改成功!"<<endl;
}else{
system("cls");
cout<<"======================================================="<<endl;
cout<<"密碼錯誤!"<<endl;
}
}
}
}
}//-
return 0;
}else{
cout<<"密碼或用戶名錯誤,請重新輸入?。?!"<<endl;
Sleep(1000);
system("cls");
}
}
}
}
}到此這篇關(guān)于基于C++自制屠夫躲貓貓小游戲的文章就介紹到這了,更多相關(guān)C++小游戲內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
在C++17中實現(xiàn)無鎖數(shù)據(jù)結(jié)構(gòu)的方法詳解
在探索?C++17?中的無鎖數(shù)據(jù)結(jié)構(gòu)之前,我們首先需要理解無鎖編程的基本概念及其在現(xiàn)代軟件開發(fā)中的重要性,在這個章節(jié)中,我們將深入探討無鎖編程的概念,以及它如何滿足人類對于更高效、更可靠軟件的本能需求,文中通過代碼示例介紹的非常詳細(xì),感興趣的朋友可以參考下2023-12-12
C語言使用openSSL庫DES模塊實現(xiàn)加密功能詳解
這篇文章主要介紹了C語言使用openSSL庫DES模塊實現(xiàn)加密功能,簡單講解了DES加密的相關(guān)概念,并結(jié)合實例形式分析了DES加密的具體實現(xiàn)技巧,需要的朋友可以參考下2017-05-05
C語言實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)之通用鏈表
這篇文章主要為大家詳細(xì)介紹了c語言實現(xiàn)通用數(shù)據(jù)結(jié)構(gòu)之通用鏈表,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2021-11-11
如何運用Capstone實現(xiàn)64位進(jìn)程鉤子掃描
本章將通過Capstone引擎實現(xiàn)64位進(jìn)程鉤子的掃描,讀者可使用此段代碼檢測目標(biāo)進(jìn)程內(nèi)是否被掛了鉤子,感興趣的朋友跟隨小編一起看看吧2024-08-08

