【趣味升级版】斗破苍穹修炼文字游戏HTML,CSS,JS

 

目录

图片展示

开始游戏

手动升级(满100%即可升级)

升级完成,即可解锁打怪模式

新增功能说明:

如何操作:

完整代码


实现一个简单的斗破苍穹修炼文字游戏,你可以使用HTML、CSS和JavaScript结合来构建游戏的界面和逻辑。以下是一个简化版的游戏框架示例,其中包含玩家修炼的过程、增加修炼进度和显示经验值的基本功能。

增加“打怪获得经验”、提升修炼速度、以及随机事件触发(比如“遇到困难”或“获得突破”等)

图片展示

开始游戏

手动升级(满100%即可升级)

升级完成,即可解锁打怪模式

新增功能说明:

  1. 打怪获得经验:新增了“打怪”按钮,玩家可以点击“打怪”按钮来获得经验。打怪时,经验有可能增加或减少(模拟失败)。

  2. 修炼速度提升:提升修炼速度的按钮仍然存在,但它现在有条件,玩家必须至少积累10点经验才能点击按钮来提升修炼速度。

  3. 随机事件:增加了一个随机的事件机制,玩家在打怪时可能会获得额外的经验,或者因失败损失一些经验。

  4. 游戏日志:所有事件的发生都会记录在游戏日志中,方便玩家查看游戏进程。

如何操作:

  • 修炼:点击“开始修炼”按钮,每次修炼进度和经验都会增加。完成修炼进度后,玩家可以提升修炼速度并解锁打怪功能。

  • 打怪:点击“打怪”按钮,进行打怪,每次会获得一定经验或损失经验。

  • 提升修炼速度:通过积累经验达到10点后,玩家可以提升修炼速度,使得修炼进度增长更快。

完整代码

<!DOCTYPE html>
<html lang="zh"><head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>斗破苍穹修炼文字游戏</title><style>body {font-family: Arial, sans-serif;background-color: #f0f8ff;margin: 0;padding: 0;display: flex;justify-content: center;align-items: center;height: 100vh;}.game-container {text-align: center;padding: 20px;background-color: white;border-radius: 10px;box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);width: 350px;}h1 {font-size: 24px;color: #333;}button {padding: 10px 20px;font-size: 16px;margin-top: 20px;cursor: pointer;border: none;background-color: #4CAF50;color: white;border-radius: 5px;transition: background-color 0.3s;}button:hover {background-color: #45a049;}button:disabled {background-color: #ddd;cursor: not-allowed;}.log {margin-top: 20px;font-size: 14px;color: #555;max-height: 120px;overflow-y: auto;}</style>
</head><body><div class="game-container"><h1>斗破苍穹 修炼游戏</h1><p id="story">你是一名修炼者,踏上了修炼的道路。</p><p>修炼进度: <span id="progress">0</span>%</p><p>经验值: <span id="exp">0</span></p><p>修炼速度: <span id="speed">1</span></p><button id="trainBtn">开始修炼</button><button id="fightBtn" disabled>去打怪</button><button id="upgradeBtn" disabled>提升修炼速度</button><div class="log" id="log"></div></div><script>// 获取页面元素const storyElement = document.getElementById('story');const progressElement = document.getElementById('progress');const expElement = document.getElementById('exp');const speedElement = document.getElementById('speed');const trainBtn = document.getElementById('trainBtn');const fightBtn = document.getElementById('fightBtn');const upgradeBtn = document.getElementById('upgradeBtn');const logElement = document.getElementById('log');// 游戏状态let progress = 0; // 修炼进度let exp = 0; // 经验值let trainingSpeed = 1; // 修炼速度let fightExp = 0; // 打怪经验let maxExp = 10; // 每次修炼所需的最大经验// 修炼按钮点击事件trainBtn.addEventListener('click', () => {if (progress < 100) {// 增加修炼进度和经验progress += trainingSpeed;exp += Math.floor(trainingSpeed / 2);// 更新页面显示progressElement.textContent = progress;expElement.textContent = exp;// 更新故事内容storyElement.textContent = `你正在修炼,进度已达到${progress}%`;// 检查是否完成修炼if (progress >= 100) {storyElement.textContent = `修炼完成!你成功突破了瓶颈,修为大增!`;trainBtn.disabled = true;upgradeBtn.disabled = false;fightBtn.disabled = false;log("你完成了修炼,修为大增!");}}});// 提升修炼速度按钮点击事件upgradeBtn.addEventListener('click', () => {if (exp >= 10) {// 提升修炼速度trainingSpeed += 1;exp -= 10; // 消耗经验// 更新页面显示expElement.textContent = exp;speedElement.textContent = trainingSpeed;storyElement.textContent = `你的修炼速度提升了!当前修炼速度:${trainingSpeed}`;log(`你提升了修炼速度!当前速度:${trainingSpeed}`);// 禁用提升按钮if (exp < 10) {upgradeBtn.disabled = true;}} else {storyElement.textContent = '经验不足,无法提升修炼速度!';}});// 打怪按钮点击事件fightBtn.addEventListener('click', () => {if (exp >= 5) {let fightResult = Math.random() > 0.5 ? "你打败了怪物,获得了经验!" : "你被怪物击败,损失了一些经验。";let fightExperience = Math.random() > 0.5 ? 5 : -3;// 更新经验exp += fightExperience;if (exp < 0) exp = 0;// 更新页面expElement.textContent = exp;log(fightResult);if (exp >= 10) {upgradeBtn.disabled = false;}} else {log("你的经验不足,无法去打怪!");}});// 打印游戏日志function log(message) {let newLog = document.createElement('p');newLog.textContent = message;logElement.appendChild(newLog);}</script>
</body></html>

嗨,我是命运之光。如果你觉得我的分享有价值,不妨通过以下方式表达你的支持:👍 点赞来表达你的喜爱,📁 关注以获取我的最新消息,💬 评论与我交流你的见解。我会继续努力,为你带来更多精彩和实用的内容。

点击这里👉 ,获取最新动态,⚡️ 让信息传递更加迅速。

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

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

相关文章

hadoop环境配置-vm安装+麒麟ubantu

一.VM版本 选择16版本&#xff0c;15版本存在windows蓝屏的情况&#xff0c;也不用设置HV等相关设置 激活下载参考下述博客&#xff1a;https://blog.csdn.net/matrixlzp/article/details/140674802 提前在bois打开SVM设置&#xff0c;不设置无法打开新建的虚拟机 ubantu下载…

会议直击|美格智能亮相2024紫光展锐全球合作伙伴大会,融合5G+AI共拓全球市场

11月26日&#xff0c;2024紫光展锐全球合作伙伴大会在上海举办&#xff0c;作为紫光展锐年度盛会&#xff0c;吸引来自全球的众多合作伙伴和行业专家、学者共同参与。美格智能与紫光展锐竭诚合作多年&#xff0c;共同面向5G、AI和卫星通信为代表的前沿科技&#xff0c;聚焦技术…

工业公辅车间数智化节能头部企业,蘑菇物联选择 TDengine 升级 AI 云智控

小T导读&#xff1a;在工业节能和智能化转型的浪潮中&#xff0c;蘑菇物联凭借其自研的灵知 AI 大模型走在行业前沿&#xff0c;为高能耗设备和公辅能源车间提供先进的 AI 解决方案。此次采访聚焦于蘑菇物联与 TDengine 的合作项目&#xff0c;通过 AI 云智控平台的建设&#x…

华为IPD流程学习之——深入解读123页华为IPD流程体系设计方法论PPT

该方案全面介绍了华为IPD流程体系设计方法论&#xff0c;包括流程体系建设的背景、理念、架构、核心特征、构建模型、与组织和战略的关系、运营机制、数字化转型以及流程管理组织等内容&#xff0c;旨在为企业提供一套系统的流程体系建设指导&#xff0c;以提升运营效率、质量和…

插入数据报错:Data truncation: Out of range value for column ‘id‘ at row 1

问题描述&#xff1a; 使用Mybatis-plus插入用户数据报错 错误&#xff1a; SQL: INSERT INTO t_user ( id, username, pwd ) VALUES ( ?, ?, ? ) Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Out of range value for column ‘id’ at …

IntelliJ+SpringBoot项目实战(十九)--在API接口中实现SpringSecurity登录并生成JWT的accessToken

在上节中实现了SpringBootJWT登录&#xff0c;但是介绍的登录是基于SpringSecurity的默认登录页实现的。但是项目开发目前很多都是前后端分离的&#xff0c;也就是VUEAPI接口的模式。所以我们需要实现在API接口中使用SpringSecurity登录。 首先需要在WebSecurityConfig中增加Au…

流水线并行,重计算:GPipe;1F1B(一前一后)调度机制

目录 GPipe 一、GPipe的背景与目的 二、GPipe的功能与特点 三、GPipe的应用与效果 四、GPipe的开源与可扩展性 1F1B(一前一后)调度机制 一、背景与基本概念 二、1F1B调度机制的要求 三、应用与挑战 GPipe 是一个基于Lingvo(Lingvo是Google基于TensorFlow二次开发的…

1-1 Gerrit实用指南

注&#xff1a;学习gerrit需要拥有git相关知识&#xff0c;如果没有学习过git请先回顾git相关知识点 黑马程序员git教程 一小时学会git git参考博客 git 实操博客 1.0 定义 Gerrit 是一个基于 Web 的代码审查系统&#xff0c;它使用 Git 作为底层版本控制系统。Gerrit 的主要功…

基于TensorFlow的手写体数字识别训练与测试

需求&#xff1a; 选择一个最简单的细分方向&#xff0c;初步了解AI图像识别的训练、测试过程TensorFlow、PyTorch、c&#xff0c;三种代码方案&#xff0c;先从TensorFlow入手探讨最基本问题的优化问题 总结&#xff1a; 基于TensorFlow的python代码库自带了mnist 训练数据…

通信与网络基础

1.网络通信基本概念 通信&#xff1a;人、物通过某种介质和行为进行信息传递与交流 网络通信&#xff1a;终端设备之间通过计算机网络进行通信 两个终端通过网线传递文件 多个终端通过路由器传递文件 终端通过Internet下载文件 2.信息传递过程 图1-1 假定A计算机访问B的web…

[免费]SpringBoot+Vue景区订票(购票)系统【论文+源码+SQL脚本】

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的SpringBootVue大景区订票(购票)系统&#xff0c;分享下哈。 项目视频演示 【免费】SpringBootVue景区订票(购票)系统 Java毕业设计_哔哩哔哩_bilibili 项目介绍 现代经济快节奏发展以及不断完善升级的信息…

医疗知识图谱的问答系统详解

一、项目介绍 该项目的数据来自垂直类医疗网站寻医问药&#xff0c;使用爬虫脚本data_spider.py&#xff0c;以结构化数据为主&#xff0c;构建了以疾病为中心的医疗知识图谱&#xff0c;实体规模4.4万&#xff0c;实体关系规模30万。schema的设计根据所采集的结构化数据生成&…

【设计模式系列】解释器模式(十七)

一、什么是解释器模式 解释器模式&#xff08;Interpreter Pattern&#xff09;是一种行为型设计模式&#xff0c;它的核心思想是分离实现与解释执行。它用于定义语言的文法规则&#xff0c;并解释执行语言中的表达式。这种模式通常是将每个表达式抽象成一个类&#xff0c;并通…

AI表情神同步!LivePortrait安装配置,一键包,使用教程

快手在AI视频这领域还真有点东西&#xff0c;视频生成工具“可灵”让大家玩得不亦乐乎。 现在又开源了一个超好玩的表情同步&#xff08;表情控制&#xff09;项目。 一看这图片&#xff0c;就充满了娱乐性。发布没几天就已经有8000Star。 项目****简介 LivePortrait 是一款…

阿里云服务器(centos7.6)部署前后端分离项目

Mysql8安装部署 确定一下系统的glibc版本&#xff0c;可以使用以下命令进行查看&#xff0c;当前系统glibc版本&#xff1a;2.17&#xff08;重要&#xff01;&#xff01;&#xff01;&#xff09; 要根据自己服务器的版本去选择对应的mysql&#xff0c;不然后续安装会报错&a…

Java中TimedCache缓存对象的详细使用

一、TimedCache 是什么&#xff1f; TimedCache是一个泛型类&#xff0c;它的主要作用通常是在一定时间范围内对特定键值对进行缓存&#xff0c;并且能够根据设定的时间策略来自动清理过期的缓存项。 TimedCache是一种带有时间控制功能的缓存数据结构。在 Java 中&#xff0c…

11、数组

1、数组概念 数组就是存储多个相同数据类型的数据。 比如&#xff1a;存储26个字母&#xff0c;存储一个班级的学生成绩。 2、数组使用 数组要遵循先定义再使用 2.1、数组定义的格式 存储数据---空间 ---- 数据类型 多少个 --- 数据个数 >> 数据类型 数…

六、文本搜索工具(grep)和正则表达式

一、grep工具的使用 1、概念 grep&#xff1a; 是 linux 系统中的一个强大的文本搜索工具&#xff0c;可以按照 正则表达式 搜索文本&#xff0c;并把匹配到的行打印出来&#xff08;匹配到的内容标红&#xff09;。 2、语法 grep [options]…… pattern [file]…… 工作方式…

【python】爬去二手车数据 未完成

技术方案 python selenium 先下载Microsoft Edge WebDriver Microsoft Edge WebDriver 官网 先看一下自己的edge版本 搜索到版本然后下载自己的版本 安装依赖 pip install seleniumimport time from selenium import webdriverdriver webdriver.Edge(executable_pathr&qu…

玩游戏常常出现vc++runtime library error R6025 这是什么意思,该怎么解决?

当玩游戏时常常出现“vc runtime library error R6025”错误&#xff0c;这通常表明微软C开发运行库组件存在问题。以下是对该错误及其解决方法的详细解释&#xff1a; 错误含义 “vc runtime library error R6025”是一个与Visual C运行时库相关的错误&#xff0c;该错误表明…