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");}}}}
}
相关文章:
C++自制小游戏《屠夫躲猫猫》
大家好,我是派蒙,我写了一个《屠夫躲猫猫》的游戏,下面是源代码: #include <stdio.h> #include <conio.h> #include<bits/stdc.h> #include<windows.h> using namespace std; string ID[1001]; string N…...

LabVIEW在高级结构监测中的创新应用
LabVIEW在高级结构监测中的创新应用 LabVIEW作为一个强大的系统设计平台,其在基于BOTDA(光时域反射分析)技术的结构监测中发挥着核心作用。利用LabVIEW的高效数据处理能力和友好的用户界面,开发了一个先进的监测系统。该系统专门…...

关于GitHub的git推送命令时报错密码授权失败问题
参考文章:https://cloud.tencent.com/developer/article/2362326?areaId106001 问题描述 当新建GitHub仓库后,通过git clone xxxx,命令克隆仓库到本地,想要提交修改内容,此时会报错443链接远程仓库失败,解…...

WPF Blend for visual studio使用
Blend for visual studio介绍 VS自带的Blend for visual studio是专门用来做WPF、Metro等的界面设计的可视化工具,其功能和PS类似。其目的让做界面和后台的程序分开,能快速绘制形状和路径、修改对象样式、动态显示对象(动画)、显示数据等高级操作。VS与B…...

云卷云舒:【实战篇】Redis迁移
1. 简介 Remote Dictionary Server(Redis)是一个由Salvatore Sanfilippo写的key-value存储系统,是一个开源的使用ANSIC语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 2. 迁移原理 redis-sh…...

[C#]yolov8-onnx在winform部署手势识别模型
【官方框架地址】 https://github.com/ultralytics/ultralytics.git 【算法介绍】 YOLOv8 是一个 SOTA 模型,它建立在以前 YOLO 版本的成功基础上,并引入了新的功能和改进,以进一步提升性能和灵活性。具体创新包括一个新的骨干网络、一个新…...
【uniapp】 uniapp 修改tabBar图标大小和navigationBar字体大小
app.vue文件中修改 //导航栏字体 .uni-page-head .uni-page-head__title{font-size: 30rpx !important; } // tab图标 .uni-tabbar .uni-tabbar__icon {width: 25rpx !important;height: 25rpx !important; }大佬地址:https://blog.csdn.net/AAAXiaoApple/article/…...

Visual Studio 2017 + opencv4.6 + contribute + Cmake(Aruco配置版本)指南
之前配置过一次这个,想起这玩意就难受,贼难配置。由于要用到里面的一个库,不得已再进行配置。看网上的博客是真的难受,这写一块,那里写一块,乱七八糟,配置一顿发现写的都是错的,还得…...

自定义事件总线
文章目录 什么是自定义事件总线具体实现思路分析定义结构实现 on实现 emit实现 off 源码 什么是自定义事件总线 自定义事件总线属于一种观察着模式,其中包括三个角色发布者(Publisher):发出事件(Event)订阅…...
212.【2023年华为OD机试真题(C卷)】堆内存申请(排序和贪心算法-JavaPythonC++JS实现)
🚀点击这里可直接跳转到本专栏,可查阅顶置最新的华为OD机试宝典~ 本专栏所有题目均包含优质解题思路,高质量解题代码(Java&Python&C++&JS分别实现),详细代码讲解,助你深入学习,深度掌握! 文章目录 一. 题目-堆内存申请二.解题思路三.题解代码Python题解代…...

Flink Watermark和时间语义
Flink 中的时间语义 时间语义: EventTime:事件创建时间;Ingestion Time:数据进入Flink的时间;Processing Time:执行操作算子的本地系统时间,与机器无关。不同的时间语义有不同的应用场合&#x…...
HarmonyOS UI框架简介
HarmonyOS UI框架介绍 HarmonyOSUI框架是一个用于构建跨设备应用的开发框架,它属于HarmonyOS系统架构的上层框架。该框架通过提供一系列的开发模型、声明式UI范式、系统API等,帮助开发者更高效地构建用户界面。 在HarmonyOSUI框架中,开发语…...

编程羔手解决Maven引入多个版本的依赖包,导致包冲突了
最近升级了些依赖发现有个hutool的方法老报错,java.lang.NoSuchMethodError: cn.hutool.core.util.ObjectUtil.defaultIfNull(Ljava/lang/Object;Ljava/util/function/Supplier;) 在 Maven 项目中,当不同的依赖模块引入 Hutool 的不同版本时,…...

C#,入门教程(08)——基本数据类型及使用的基础知识
上一篇: C#,入门教程(07)——软件项目的源文件与目录结构https://blog.csdn.net/beijinghorn/article/details/124139947 数据类型用于指定数据体(DataEntity,包括但不限于类或结构体的属性、变量、常量、函数返回值)…...

分类预测 | Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测
分类预测 | Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测 目录 分类预测 | Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测分类效果基本描述程序设计参考资料 分类效果 基本描述 1.Matlab实现DBO-SVM蜣螂算法优化支持向量机多特征分类预测(完整…...
计算机二级Python选择题考点——公共基础部分
计算机完成一条指令所花费的时间称为一个指令周期。(指令周期越短,指令执行就越快)顺序程序不具有并发性。(具有顺序性、封闭性和可再现性)结构化程序设计强调程序的易读性。系统软件:操作系统、编译程序、数据库管理系统 应用软件:杀毒软件在…...

《微机原理与应用》期末考试题库(附答案解析)
第1章 微型计算机概述 1.微型计算机的硬件系统包括___A _____。 A.控制器、运算器、存储器和输入输出设备 B.控制器、主机、键盘和显示器 C.主机、电源、CPU和输入输出 D.CPU、键盘、显示器和打印机 2.微处…...

如何在Android Glide中结合使用CenterCrop和自定义圆角变换(图片部分圆角矩形)
如何在Android Glide中结合使用CenterCrop和自定义圆角变换(图片部分圆角矩形) 在Android开发中,使用Glide加载图片时,我们经常需要对图片进行特定的处理,比如裁剪和圆角变换,特别是一些设计稿,…...
华为机考-手拍球游戏
【手拍手计算次数和总数】游戏规则:左手和右手拍球初始数为0,首先左手第一次拍球数1下,右手拍球1下,接下来左手在拍球时是上一次左手上一次右手的总和,右手也是上一次左手上一次右手拍球的总和,最后拍球总数…...
【线上问题】两台服务器的时间不一致导致jwt解析错误
目录 一、问题描述二、解决方法 一、问题描述 1.线上生产问题,本地和测试环境均无问题 2.本地和测试由于网关和登录服务均在同一台机器 3.线上的登录服务和网关部署不在一起,登录服务的时间正常,网关服务的服务器时间比实际快5秒 4.登录服务j…...

国防科技大学计算机基础课程笔记02信息编码
1.机内码和国标码 国标码就是我们非常熟悉的这个GB2312,但是因为都是16进制,因此这个了16进制的数据既可以翻译成为这个机器码,也可以翻译成为这个国标码,所以这个时候很容易会出现这个歧义的情况; 因此,我们的这个国…...

基于ASP.NET+ SQL Server实现(Web)医院信息管理系统
医院信息管理系统 1. 课程设计内容 在 visual studio 2017 平台上,开发一个“医院信息管理系统”Web 程序。 2. 课程设计目的 综合运用 c#.net 知识,在 vs 2017 平台上,进行 ASP.NET 应用程序和简易网站的开发;初步熟悉开发一…...
java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别
UnsatisfiedLinkError 在对接硬件设备中,我们会遇到使用 java 调用 dll文件 的情况,此时大概率出现UnsatisfiedLinkError链接错误,原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用,结果 dll 未实现 JNI 协…...
五年级数学知识边界总结思考-下册
目录 一、背景二、过程1.观察物体小学五年级下册“观察物体”知识点详解:由来、作用与意义**一、知识点核心内容****二、知识点的由来:从生活实践到数学抽象****三、知识的作用:解决实际问题的工具****四、学习的意义:培养核心素养…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
Rapidio门铃消息FIFO溢出机制
关于RapidIO门铃消息FIFO的溢出机制及其与中断抖动的关系,以下是深入解析: 门铃FIFO溢出的本质 在RapidIO系统中,门铃消息FIFO是硬件控制器内部的缓冲区,用于临时存储接收到的门铃消息(Doorbell Message)。…...

安宝特案例丨Vuzix AR智能眼镜集成专业软件,助力卢森堡医院药房转型,赢得辉瑞创新奖
在Vuzix M400 AR智能眼镜的助力下,卢森堡罗伯特舒曼医院(the Robert Schuman Hospitals, HRS)凭借在无菌制剂生产流程中引入增强现实技术(AR)创新项目,荣获了2024年6月7日由卢森堡医院药剂师协会࿰…...
A2A JS SDK 完整教程:快速入门指南
目录 什么是 A2A JS SDK?A2A JS 安装与设置A2A JS 核心概念创建你的第一个 A2A JS 代理A2A JS 服务端开发A2A JS 客户端使用A2A JS 高级特性A2A JS 最佳实践A2A JS 故障排除 什么是 A2A JS SDK? A2A JS SDK 是一个专为 JavaScript/TypeScript 开发者设计的强大库ÿ…...

【笔记】WSL 中 Rust 安装与测试完整记录
#工作记录 WSL 中 Rust 安装与测试完整记录 1. 运行环境 系统:Ubuntu 24.04 LTS (WSL2)架构:x86_64 (GNU/Linux)Rust 版本:rustc 1.87.0 (2025-05-09)Cargo 版本:cargo 1.87.0 (2025-05-06) 2. 安装 Rust 2.1 使用 Rust 官方安…...
C#学习第29天:表达式树(Expression Trees)
目录 什么是表达式树? 核心概念 1.表达式树的构建 2. 表达式树与Lambda表达式 3.解析和访问表达式树 4.动态条件查询 表达式树的优势 1.动态构建查询 2.LINQ 提供程序支持: 3.性能优化 4.元数据处理 5.代码转换和重写 适用场景 代码复杂性…...