C++自制小游戏《屠夫躲猫猫》

大家好,我是派蒙,我写了一个《屠夫躲猫猫》的游戏,下面是源代码:

#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<<"(本机注册的账户只能在本机中使用)"<<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<<"请设置密码:"<<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<<"         注意自我保护,谨防受骗上当。"<<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<<"选择模式:(输入对应中文)"<<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<<"请选择躲藏位置:(输入对应中文)"<<endl;cout<<"床底下/衣柜里/窗帘后/马桶里/桌底下/沙发底/沙发后/原地不动"<<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=="沙发底"){Location=5;}else if(n=="沙发后"){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<<"沙发底\n";}else if(Location==6){cout<<"沙发后\n";}Sleep(1000);if(Location==7){cout<<"由于你没有躲藏,你被屠夫发现了。你死了。";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<<"沙发底";}else if(go==6){cout<<"沙发后";}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");}}}}
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/599695.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Fiddler抓取https原理?

首先fiddler截获客户端浏览器发送给服务器的https请求&#xff0c; 此时还未建立握手。 第一步&#xff0c; fiddler向服务器发送请求进行握手&#xff0c; 获取到服务器的CA证书&#xff0c; 用根证书公钥进行解密&#xff0c; 验证服务器数据签名&#xff0c; 获取到服务器C…

数据结构学习 jz34 二叉树中和为某一值的路径

关键词&#xff1a;回溯 二叉树 前序遍历 路径记录 因为我没有仔细接触过二叉树的遍历过程&#xff0c;所以我是懵懵懂懂按照dfs的方法写的。没想到写对了&#xff0c;看了解答发现这叫做二叉树的前序遍历。用时29min。 这让我明白了前序遍历和dfs原来是有相同之处的。&#…

Local server not started, start with 报错python -m weditor

一、python -m weditor 如图报错 Local server not started, start with 报错 二、解决方案 右上角选择新的无痕窗口下&#xff0c;然后打开 http://localhost:17310/ 即可

2401C++,无栈协程核心概念

无栈协程本质是个可多次执行的状态机.一般使用协程的标准流程是,生成一个状态机,返回状态机的(协柄)句柄,通过控制该句柄,不断反复执行(恢复). 执行过程中,该状态机作用是:不停产生数据并写到某个地方.所以c20协程提供了协产和协中,同时,每个协程都应有个实现了产生值或中值函…

OBJECT 划分

5、Object 划分 1.PO(persistant object) 持久对象 PO 就是对应数据库中某个表中的一条记录&#xff0c;多个记录可以用 PO 的集合。 PO 中应该不包含任何对数据库的操作。 2.DO&#xff08;Domain Object&#xff09;领域对象 就是从现实世界中抽象出来的有形或无形的业务实体…

React与Vue性能对比:两大前端框架的性能

React和Vue是当今最流行的两个前端框架&#xff0c;它们在性能方面都有着出色的表现。 React的加载速度&#xff1a; 初次加载&#xff1a;由于React使用了虚拟DOM&#xff08;Virtual DOM&#xff09;技术&#xff0c;它可以通过比较虚拟DOM树与实际DOM树的差异来进行高效的…

PCIe 6.0生态业内进展分析总结-2

3.PCIe 6.0协议分析仪 (1)Keysight Keysight是德科技在2023年6月份对外宣布&#xff0c;第一款支持PCIe 6.0协议验证调试工具。 Keysight PCIe 6.0架构解决方案具备以下特点&#xff1a; 分析PCIe 6.0技术设计的数据链路/事务层 支持所有PCIe技术速率——从2.5 GT/s至64 GT/…

实验笔记之——基于COLMAP的Instant-NGP与3D Gaussian Splatting的对比

之前博客进行了COLMAP在服务器下的测试 实验笔记之——Linux实现COLMAP-CSDN博客文章浏览阅读794次&#xff0c;点赞24次&#xff0c;收藏6次。学习笔记之——NeRF SLAM&#xff08;基于神经辐射场的SLAM&#xff09;-CSDN博客NeRF 所做的任务是 Novel View Synthesis&#xf…

《PySpark大数据分析实战》-25.数据可视化图表Matplotlib介绍

&#x1f4cb; 博主简介 &#x1f496; 作者简介&#xff1a;大家好&#xff0c;我是wux_labs。&#x1f61c; 热衷于各种主流技术&#xff0c;热爱数据科学、机器学习、云计算、人工智能。 通过了TiDB数据库专员&#xff08;PCTA&#xff09;、TiDB数据库专家&#xff08;PCTP…

2024-01-04 用llama.cpp部署本地llama2-7b大模型

点击 <C 语言编程核心突破> 快速C语言入门 用llama.cpp部署本地llama2-7b大模型 前言一、下载llama.cpp以及llama2-7B模型文件二、具体调用总结 使用协议: License to use Creative Commons Zero - CC0 该图片个人及商用免费&#xff0c;无需显示归属&#xff0c;但如果…

阿里通义千问「全民舞王」,一张照片就能跳《科目三》,刷爆朋友圈

这两天看朋友圈、网上都在发这种跳舞的视频。只要上传一张全身照&#xff0c;就可以生成各种跳舞的视频。 比如前段时间火爆海底捞的《科目三》&#xff0c;还有《DJ慢摇》、《鬼步舞》、《兔子舞》、甚至还有咱《秧歌舞》。 先来一睹为快&#xff01; 阿里通义千问「全民舞王…

虚拟机(克隆)导入/导出镜像(OVAOVF)

一.了解虚拟化和 UEFI 虚拟化是一种技术&#xff0c;通过在物理硬件上创建虚拟的计算环境&#xff0c;使得多个操作系统和应用程序可以在同一台计算机上同时运行。虚拟机是在这个虚拟化环境中运行的实例&#xff0c;它们需要被赋予操作系统和固件等系统软件来进行运行。UEFI&a…

Spring学习之——注入DI(Dependence Injection)

注入DI&#xff08;Dependence Injection&#xff09; 概念&#xff08;什么是注入&#xff09; DI&#xff08;Dependency Injection&#xff09;依赖注入&#xff0c;在Spring创建对象的同时&#xff0c;为其属性赋值&#xff0c;称之为依赖注入。 注入方式一&#xff1a;…

Python+selenium+chromedriver实现爬虫示例代码

下载好所需程序 1.Selenium简介 Selenium是一个用于Web应用程序测试的工具&#xff0c;直接运行在浏览器中&#xff0c;就像真正的用户在操作一样。 2.Selenium安装 方法一&#xff1a;在Windows命令行&#xff08;cmd&#xff09;输入pip install selenium即可自动安装&am…

炫酷的倒计时引导页

文章目录 文件分布介绍效果预览代码css样式Locationplayer.css js样式player.js 文件分布介绍 效果预览 代码 css样式 Location html {height: 100%;}body {font-family: "Helvetica Neue", "Luxi Sans", "DejaVu Sans", Tahoma, "Hirag…

利用Stream流将取到的对象List<对象>形式数据进行分组统计转变成Map<分组条件,数量统计>形式

举个例子吧,目前的业务需要把取到的数据,进行分组,然后好用另一个方法进行数据处理。 然后,就以下面的为例子,将取到的list集合,将取到的数据以性别分组,以性别为K,以性别数量为v,。 代码示例: package Lx;import java.util.ArrayList; import java.util.List; imp…

c语言-函数指针

目录 前言一、函数指针1.1 函数指针定义1.2 函数指针调用函数1.3 函数指针代码分析 总结 前言 本篇文章介绍c语言中的函数指针以及函数指针的应用。 一、函数指针 函数指针&#xff1a;指向函数的指针。 函数在编译时分配地址。 &函数名 和 函数名代表的意义相同&#xf…

外包干了3个多月,技术退步明显。。。。。

先说一下自己的情况&#xff0c;本科生生&#xff0c;19年通过校招进入广州某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年年初&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…

SpringIOC之support模块DefaultMessageSourceResolvable

博主介绍&#xff1a;✌全网粉丝5W&#xff0c;全栈开发工程师&#xff0c;从事多年软件开发&#xff0c;在大厂呆过。持有软件中级、六级等证书。可提供微服务项目搭建与毕业项目实战&#xff0c;博主也曾写过优秀论文&#xff0c;查重率极低&#xff0c;在这方面有丰富的经验…

Profinet转Modbus网关助你畅享智能工业

Modbus转Profinet网关&#xff08;XD-MDPN100/200&#xff09;具有广泛的应用价值。无论是汽车制造、机械加工还是能源管理&#xff0c;都可以通过使用该网关&#xff0c;实现设备之间的高效通信。其次&#xff0c;Modbus转Profinet网关&#xff08;XD-MDPN100/200&#xff09;…