人机打怪小游戏(非常人机)
按q攻击 按箭头进行控制 玩家是@ 怪是* 攻击是^
#include<bits/stdc++.h>
#include<Windows.h>
#include<conio.h>
#define fr(i,a,b) for(int i=a;i<=b;i++)
#define rd(a,b) rand()%(b-a+1)+a
using namespace std;
int x=16,y=21,dx[4]={-1,0,1,0},dy[4]={0,1,0,-1},timeand,defe,times_q;
int b[2][1100000],q1=1,z1,times,vik[1100000];
int c[2][1100000],q2=1,z2,vis[1100000];
const int N=30,M=40;
void color(int clr)
{SetConsoleTextAttribute(GetStdHandle(STD_OUTPUT_HANDLE),clr);
}
void gb_close()
{CONSOLE_CURSOR_INFO cur;cur.dwSize=1;cur.bVisible=FALSE;HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleCursorInfo(handle,&cur);
}
void gb_jump(int x,int y)
{gb_close();COORD pos;pos.X=x;pos.Y=y;HANDLE handle=GetStdHandle(STD_OUTPUT_HANDLE);SetConsoleCursorPosition(handle,pos);gb_close();
}
void print()
{color(11);for(int i=1;i<=M+1;i++){gb_jump(i,1);printf("_");}for(int i=2;i<=N+1;i++){gb_jump(1,i);printf("|");gb_jump(M+1,i);printf("|");}for(int i=2;i<=M;i++){gb_jump(i,N+1);printf("_");}gb_jump(50,15);printf("得分:%d",defe); color(7);
}
void make()
{b[0][++z1]=2;b[1][z1]=rd(2,40);
}
void make2()
{c[0][++z2]=x-1;c[1][z2]=y;
}
void KO()
{system("cls");color(4);printf(" | / _____ \n");printf(" | / / \\ \n");printf(" | / / \\ \n");printf(" | / | | \n");printf(" | / | | \n");printf(" | / | | \n");printf(" | / | | \n");printf(" |/ | | 得分:%d \n",defe/30);printf(" |\\ | | \n");printf(" | \\ | | \n");printf(" | \\ | | \n");printf(" | \\ | | \n");printf(" | \\ | | \n");printf(" | \\ \\ / \n");printf(" | \\ \\ / \n");printf(" | \\ \\____/ \n");color(0);Sleep(100000);exit(0);
}
int main()
{system("mode con cols=3000 lines=200");srand(time(NULL));system("pause");system("cls");printf("选择难度:\n1.入门 2.普通 3.较难 4.地狱\n");int qjqjq;scanf("%d",&qjqjq);if(qjqjq==1){timeand=2e4;}else if(qjqjq==2){timeand=1e4;}else if(qjqjq==3){timeand=5e3;}else if(qjqjq==4){timeand=2e3;}else{system("cls");return 0;}system("cls");printf("开始");Sleep(3000);system("cls");print();gb_jump(y,x);color(6);printf("@");color(7);while(true){if(times_q>=100){system("cls");color(4);printf("吃屎吧!!!!!!!!!!!!!");Sleep(10000000);return 0; }while(!kbhit()){times++;if(times>=timeand){color(6);gb_jump(y,x);printf("@");color(7);defe++;color(11);gb_jump(50,15);printf("得分:%d",defe/30);color(7);times=0;make();for(int i=q1;i<=z1;i++){if(vik[i]){continue;}if(b[0][i]>=N){q1++;gb_jump(b[1][i],b[0][i]);printf(" ");continue;}gb_jump(b[1][i],b[0][i]);printf(" ");b[0][i]++;gb_jump(b[1][i],b[0][i]);if(b[0][i]==x&&b[1][i]==y){KO();}bool flag=0;for(int j=q2;j<=z2;j++){if(vis[j]==0&&b[0][i]==c[0][j]&&b[1][i]==c[1][j]){vik[i]=1;vis[j]=1;flag=1;gb_jump(c[1][j],c[0][j]);printf(" ");break;}}if(!flag){color(13);gb_jump(b[1][i],b[0][i]);printf("*");color(7);}}for(int i=q2;i<=z2;i++){if(vis[i]){continue;}if(c[0][i]<=2){q2++;gb_jump(c[1][i],c[0][i]);printf(" ");continue;}gb_jump(c[1][i],c[0][i]);printf(" ");c[0][i]--;gb_jump(c[1][i],c[0][i]);bool flag2=0;for(int j=q1;j<=z1;j++){if(vik[j]==0&&b[0][j]==c[0][i]&&b[1][j]==c[1][i]){vik[j]=1;vis[i]=1;flag2=1;gb_jump(b[1][i],b[0][i]);printf(" ");break;}}if(!flag2){color(10);printf("^");color(7);}}}}char tsg=getch();if(tsg=='a'){char lk=getch();while(lk!='a'){lk=getch();}continue;}if(tsg=='q'){times_q++;make2();continue;}char k=getch();if(k!=72&&k!=75&&k!=77&&k!=80&&k!='a'&&k!='q'){continue;}gb_jump(y,x);printf(" ");if(k==72){if(x>2){x--;}}if(k==75){if(y>2){y--;}}if(k==77){if(y<M){y++;}}if(k==80){if(x<N){x++;}}gb_jump(y,x);color(6);printf("@");color(7);}return 0;
}
相关文章:
人机打怪小游戏(非常人机)
按q攻击 按箭头进行控制 玩家是 怪是* 攻击是^ #include<bits/stdc.h> #include<Windows.h> #include<conio.h> #define fr(i,a,b) for(int ia;i<b;i) #define rd(a,b) rand()%(b-a1)a using namespace std; int x16,y21,dx[4]{-1,0,1,0},dy[4]{0,…...
SpringBoot 集成 Sharding-JDBC(一):数据分片
在深入探讨 Sharding-JDBC 之前,建议读者先了解数据库分库分表的基本概念和应用场景。如果您还没有阅读过相关的内容,可以先阅读我们之前的文章: 关系型数据库海量数据存储策略-CSDN博客 这篇文章将帮助您更好地理解分库分表的基本原理和实现…...
django-ninja 实现cors跨域请求
要在Django-Ninja项目中实现跨域(CORS),你可以使用django-cors-headers库,这是一个专门用于处理跨域资源共享(CORS)问题的Django应用程序。以下是具体的步骤和配置: 安装依赖: 使用p…...
【论文阅读】InstructPix2Pix: Learning to Follow Image Editing Instructions
摘要: 提出了一种方法,用于教导生成模型根据人类编写的指令进行图像编辑:给定一张输入图像和一条书面指令,模型按照指令对图像进行编辑。 由于为此任务获取大规模训练数据非常困难,我们提出了一种生成配对数据集的方…...
常用在汽车PKE无钥匙进入系统的高度集成SOC芯片:CSM2433
CSM2433是一款集成2.4GHz频段发射器、125KHz接收器和8位RISC(精简指令集)MCU的SOC芯片,用在汽车PKE无钥匙进入系统里。 什么是汽车PKE无钥匙进入系统? 无钥匙进入系统具有无钥匙进入并且启动的功能,英文名称是PKE&…...
【第四课】rust声明式宏理解与实战
目录 前言 理解宏 实战宏 前言 上一课在介绍vector时,我们再一次提到了rust中的宏,在初始化vector时使用了vec!宏,当时补了一句有机会会好好说明一下rust中的宏,并且写一个hashmap宏来初始化hashmap。想了想一直介绍基本语法还…...
渗透测试--Linux下的文件传输方法
渗透测试过程中,我们经常会需要文件传输,本文主要探讨Linux主机上我们对文件传输的方法。 编码方式 Linux 检查MD5 md5sum id_rsa Linux Base64 编码/解码 编码 cat id_rsa |base64 -w 0;echo 解码 echo -n LS0tLS1CRUdJTiBPUEVOU1NIIFBSSVZBVE…...
浅议Flink中的通讯工具: Akka
在Flink中,各个组件之间需要频繁交换数据和控制信息。Flink选择了基于Actor模型的Akka框架作为通信基础。 Akka是什么 Actor模型 Actor模型是用于单个进程中并发的场景。 在Actor模型中: ActorSystem负责管理actor生命周期 将每个实体视为独立的 Ac…...
基于YOLOv8深度学习的独居老人情感状态监护系统(PyQt5界面+数据集+训练代码)
本研究提出了一种创新的独居老人情感状态监护系统,基于YOLOV8深度学习模型,旨在通过对老年人面部表情的实时监测与分析,来精准识别其情感变化,从而提高独居老人的生活质量,确保其心理健康。本系统通过整合先进的YOLOV8…...
Qt添加外部库:静态库和动态库,批量添加头文件
Qt添加外部库需要知道库文件的位置才能正确链接,如果是静态库,要确保LIBS变量中包含正确的库文件路径和库文件名;如果是动态库,除了库路径外,还需要考虑动态库的加载路径。在 Windows 下,可以将动态库所在路径添加到系…...
Unity类银河战士恶魔城学习总结(P132 Merge skill tree with skill Manager 把技能树和冲刺技能相组合)
【Unity教程】从0编程制作类银河恶魔城游戏_哔哩哔哩_bilibili 教程源地址:https://www.udemy.com/course/2d-rpg-alexdev/ 本章节实现了解锁技能后才可以使用技能,先完成了冲刺技能的锁定解锁 Dash_Skill.cs using System.Collections; using System…...
Docker入门之Windows安装Docker初体验
在之前我们认识了docker的容器,了解了docker的相关概念:镜像,容器,仓库:面试官让你介绍一下docker,别再说不知道了 之后又带大家动手体验了一下docker从零开始玩转 Docker:一站式入门指南&#…...
DNS实验作业
实验要求 1.搭建dns服务器能够对自定义的正向或者反向域完成数据解析查询。 2.配置从DNS服务器,对主dns服务器进行数据备份。 实验步骤: 1.关闭防护墙 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2.正向解析 [rootlo…...
CSS回顾-CSS选择器详解
一、引言 我来填坑啦!之前在CSS基础知识详解中介绍过,CSS 是一门基于规则的语言。是由选择器与样式信息组成:选择器 {样式信息}。CSS 选择器是 CSS 规则的关键,能精准定位 HTML 元素,CSS3 新增选择器更是增强了设计能…...
FFMPEG录像推流时遇到的问题
FFMPEG录像推流时遇到的问题,记录一下供大参考 1. ret avformat_write_header( ofmt_ctx, NULL ); 执行写入头后,所有的流的时间基都会被内部重新设置,所以并不你想象的把原来的时间直接入到avPACKET中就可以发送了。必须要把你每个流的P…...
【STM32+K210项目】基于K210智能人脸识别+车牌识别系统(完整工程资料源码)
运行效果: 基于K210的智能人脸与车牌识别系统工程 目录: 运行效果: 目录: 前言: 一、国内外研究现状与发展趋势 二、相关技术基础 2.1 人脸识别技术 2.2 车牌识别技术 三、智能小区门禁系统设计 3.1 系统设计方案 3.2 系统设计目标 3.3 智能小区门禁系统硬件设计 3.3.1 控…...
Unity脚本基础规则
Unity脚本基础规则 如何在Unity中创建一个脚本文件? 在Project窗口中的Assets目录下,选择合适的文件夹,右键,选择第一个Create,在新出现的一栏中选择C# Script,此时文件夹内会出现C#脚本图标,…...
基于AIRTEST和Jmeter、Postman的自动化测试框架
基于目前项目和团队技术升级,采用了UI自动化和接口自动化联动数据,进行相关测试活动,获得更好的测试质量和测试结果。...
使用 Azure OpenAI 服务对数据进行联合 SharePoint 搜索
作者:来自 Elastic Gustavo Llermaly 使用 Azure OpenAI 服务处理你的数据,并使用 Elastic 作为向量数据库。 在本文中,我们将探索 Azure OpenAI 服务 “On Your Data”,使用 Elasticsearch 作为数据源。我们将使用 Elastic Shar…...
JavaScript学习笔记 1】初识JS
目录 一、JS是什么? 二、JS的作用? 三、JS的组成 四、JS的书写位置 1. 内部JS 2. 外部JS(外部导入) 3. 内联JS 4. 练习 五、JS的注释与结束符 1. 注释 2. 结束符 3. JS该不该加分号? 六、JS的输入和输出语法 1. 输出语法 a. 输出在页面中 b. …...
未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?
编辑:陈萍萍的公主一点人工一点智能 未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战,在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…...
3.3.1_1 检错编码(奇偶校验码)
从这节课开始,我们会探讨数据链路层的差错控制功能,差错控制功能的主要目标是要发现并且解决一个帧内部的位错误,我们需要使用特殊的编码技术去发现帧内部的位错误,当我们发现位错误之后,通常来说有两种解决方案。第一…...
Java如何权衡是使用无序的数组还是有序的数组
在 Java 中,选择有序数组还是无序数组取决于具体场景的性能需求与操作特点。以下是关键权衡因素及决策指南: ⚖️ 核心权衡维度 维度有序数组无序数组查询性能二分查找 O(log n) ✅线性扫描 O(n) ❌插入/删除需移位维护顺序 O(n) ❌直接操作尾部 O(1) ✅内存开销与无序数组相…...
Python基于历史模拟方法实现投资组合风险管理的VaR与ES模型项目实战
说明:这是一个机器学习实战项目(附带数据代码文档),如需数据代码文档可以直接到文章最后关注获取。 1.项目背景 在金融市场日益复杂和波动加剧的背景下,风险管理成为金融机构和个人投资者关注的核心议题之一。VaR&…...
计算机基础知识解析:从应用到架构的全面拆解
目录 前言 1、 计算机的应用领域:无处不在的数字助手 2、 计算机的进化史:从算盘到量子计算 3、计算机的分类:不止 “台式机和笔记本” 4、计算机的组件:硬件与软件的协同 4.1 硬件:五大核心部件 4.2 软件&#…...
HybridVLA——让单一LLM同时具备扩散和自回归动作预测能力:训练时既扩散也回归,但推理时则扩散
前言 如上一篇文章《dexcap升级版之DexWild》中的前言部分所说,在叠衣服的过程中,我会带着团队对比各种模型、方法、策略,毕竟针对各个场景始终寻找更优的解决方案,是我个人和我司「七月在线」的职责之一 且个人认为,…...
五子棋测试用例
一.项目背景 1.1 项目简介 传统棋类文化的推广 五子棋是一种古老的棋类游戏,有着深厚的文化底蕴。通过将五子棋制作成网页游戏,可以让更多的人了解和接触到这一传统棋类文化。无论是国内还是国外的玩家,都可以通过网页五子棋感受到东方棋类…...
WEB3全栈开发——面试专业技能点P7前端与链上集成
一、Next.js技术栈 ✅ 概念介绍 Next.js 是一个基于 React 的 服务端渲染(SSR)与静态网站生成(SSG) 框架,由 Vercel 开发。它简化了构建生产级 React 应用的过程,并内置了很多特性: ✅ 文件系…...
Spring AOP代理对象生成原理
代理对象生成的关键类是【AnnotationAwareAspectJAutoProxyCreator】,这个类继承了【BeanPostProcessor】是一个后置处理器 在bean对象生命周期中初始化时执行【org.springframework.beans.factory.config.BeanPostProcessor#postProcessAfterInitialization】方法时…...
Python爬虫实战:研究Restkit库相关技术
1. 引言 1.1 研究背景与意义 在当今信息爆炸的时代,互联网上存在着海量的有价值数据。如何高效地采集这些数据并将其应用于实际业务中,成为了许多企业和开发者关注的焦点。网络爬虫技术作为一种自动化的数据采集工具,可以帮助我们从网页中提取所需的信息。而 RESTful API …...
