while 循环在需要时未结束

2023-12-30

所以一些背景信息,我是编程新手,仍在学习,所以我为我犯的微不足道的错误道歉。我正在制作自己的基于文本的游戏只是为了进一步练习等。

以下是 Dropbox 上所有内容的链接,以了解更多背景信息:https://www.dropbox.com/sh/uxy7vafzt3fwikf/B-FQ3VXfsR https://www.dropbox.com/sh/uxy7vafzt3fwikf/B-FQ3VXfsR

我目前正在尝试为我的游戏实现战斗系统,但遇到了战斗序列在需要时未结束的问题。 “战斗序列”是一个 while 循环,如下所示:

public void startCombat()
{

    inCombat = true;

    while(inCombat != false)// && herohealth > 0 && monsterhealth > 0)
    {
        checkAlive();
        heroHitMonster();
        checkAlive();
        monsterHitHero();           
    }          

    attackinghero.setHeroHealth(herohealth);
    attackedmonster.setMonsterHealth(monsterhealth);
}

其中checkAlive()方法如下:

public void checkAlive()
{    
    if(herohealth <= 0)
    {            
        System.out.println("You have died.");
        attackinghero.clearInventory();
        inCombat = false;

    }

    else if(monsterhealth <= 0)
    {         
        System.out.println("You have killed the "+attackedmonster.getmonsterName()+"!");
        inCombat = false;
        combatlocation.removeMonster(attackedmonster.getmonsterName());
    }    

    else
    {
        //
    }
}   

我试图让它在“英雄”或“怪物”生命值

这就是当前正在“打印到屏幕上”的内容

老鼠失去 5 点生命值! 你已经杀了老鼠了!

英雄失去 1 点生命值!

非常感谢任何帮助,提前致谢。


checkAlive 不应该是 void 它应该是布尔值并且应该返回 inCombat,并且在你的函数 startCombat 中你应该做 inCombat=checkAlive();

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

while 循环在需要时未结束 的相关文章

  • 在 JTable 中移动行

    我使用 MVC 模式 并且有一个如下所示的 JTable List
  • 如何在一行中将字符串数组转换为双精度数组

    我有一个字符串数组 String guaranteedOutput Arrays copyOf values values length String class 所有字符串值都是数字 数据应转换为Double QuestionJava 中
  • AES 加密 Java/plsql

    我需要在Java和plsql DBMS CRYPTO for Oracle 10g 上实现相同的加密 解密应用程序 两种实现都工作正常 但这里的问题是我对相同纯文本的加密得到了不同的输出 下面是用于加密 解密过程的代码 Java 和 PLS
  • manifest.mf 文件的附加内容的约定?

    Java JAR 中的 MANIFEST MF 文件是否有任何超出 MANIFEST MF 约定的约定 JAR规范 http download oracle com javase 1 4 2 docs guide jar jar html
  • 如何查找 Android 设备中的所有文件并将它们放入列表中?

    我正在寻求帮助来列出 Android 外部存储设备中的所有文件 我想查找所有文件夹 包括主文件夹的子文件夹 有办法吗 我已经做了一个基本的工作 但我仍然没有得到想要的结果 这不起作用 这是我的代码 File files array file
  • java.io.IOException: %1 不是有效的 Win32 应用程序

    我正在尝试对 XML 文档进行数字签名 为此我有两个选择 有一个由爱沙尼亚认证中心为程序员创建的库 还有一个由银行制作的运行 Java 代码的脚本 如果使用官方 认证中心 库 那么一切都会像魅力一样进行一些调整 但是当涉及到银行脚本时 它会
  • 使用 ANTLR 为 java 源代码生成抽象语法树

    如何使用 ANTLR 从 java src 代码生成 AST 有什么帮助吗 好的 步骤如下 前往ANTLR站点 http www antlr org 并下载最新版本 下载Java g和JavaTreeParser g文件来自here htt
  • Java 页面爬行和解析之 Crawler4j 与 Jsoup

    我想获取页面的内容并提取其中的特定部分 据我所知 此类任务至少有两种解决方案 爬虫4j https github com yasserg crawler4j and Jsoup http jsoup org 它们都能够检索页面的内容并提取其
  • OnClick 事件中的 finish() 如何工作?

    我有一个Activity一键退出Activity 通过layout xml我必须设置OnClick事件至cmd exit调用 this finish 效果很好 public void cmd exit View editLayout thi
  • Microsoft Graph 身份验证 - 委派权限

    我可以使用 Microsoft Graph 访问资源无需用户即可访问 https developer microsoft com en us graph docs concepts auth v2 service 但是 此方法不允许我访问需
  • Java中接口作为方法参数

    前几天去面试 被问到了这样的问题 问 反转链表 给出以下代码 public class ReverseList interface NodeList int getItem NodeList nextNode void reverse No
  • 反思 Groovy 脚本中声明的函数

    有没有一种方法可以获取 Groovy 脚本中声明的函数的反射数据 该脚本已通过GroovyShell目的 具体来说 我想枚举脚本中的函数并访问附加到它们的注释 Put this到 Groovy 脚本的最后一行 它将作为脚本的返回值 a la
  • 归并排序中的递归:两次递归调用

    private void mergesort int low int high line 1 if low lt high line 2 int middle low high 2 line 3 mergesort low middle l
  • Java直接内存:在自定义类中使用sun.misc.Cleaner

    在 Java 中 NIO 直接缓冲区分配的内存通过以下方式释放 sun misc Cleaner实例 一些比对象终结更有效的特殊幻像引用 这种清洁器机制是否仅针对直接缓冲区子类硬编码在 JVM 中 或者是否也可以在自定义组件中使用清洁器 例
  • 将多模块 Maven 项目导入 Eclipse 时出现问题 (STS 2.5.2)

    我刚刚花了最后一个小时查看 Stackoverflow com 上的线程 尝试将 Maven 项目导入到 Spring ToolSuite 2 5 2 中 Maven 项目有多个模块 当我使用 STS 中的 Import 向导导入项目时 所
  • 使用 SAX 进行 XML 解析 |如何处理特殊字符?

    我们有一个 JAVA 应用程序 可以从 SAP 系统中提取数据 解析数据并呈现给用户 使用 SAP JCo 连接器提取数据 最近我们抛出了一个异常 org xml sax SAXParseException 字符引用 是无效的 XML 字符
  • 当单元格内的 JComboBox 中有 ItemEvent 时,如何获取 CellRow

    我有一个 JTable 其中有一列包含 JComboBox 我有一个附加到 JComboBox 的 ItemListener 它会根据任何更改进行操作 但是 ItemListener 没有获取更改的 ComboBox 所在行的方法 当组合框
  • Springs 元素“beans”不能具有字符 [children],因为该类型的内容类型是仅元素

    我在 stackoverflow 中搜索了一些页面来解决这个问题 确实遵循了一些正确的答案 但不起作用 我是春天的新人 对不起 这是我的调度程序 servlet
  • 休眠以持久保存日期

    有没有办法告诉 Hibernate java util Date 应该持久保存 我需要这个来解决 MySQL 中缺少的毫秒分辨率问题 您能想到这种方法有什么缺点吗 您可以自己创建字段long 或者使用自定义的UserType 实施后User
  • KeyPressed 和 KeyTyped 混淆[重复]

    这个问题在这里已经有答案了 我搜索过之间的区别KeyPressedand KeyTyped事件 但我仍然不清楚 我发现的一件事是 Keypressed 比 KeyTyped 首先被触发 请澄清一下这些事件何时被准确触发 哪个适合用于哪个目的

随机推荐

  • Laravel 5.4 artisan 为 /public 处的现有文件夹提供 htaccess / 和 Routes::get 服务

    我仍在尝试使用 Laravel 5 4 然而运行 php artisan server 没有考虑 public中的 htaccess文件 无论我在那里编辑什么 它仍然没有处理它 artisan服务运行在127 0 0 1 8000 我遇到这
  • 将 API 的响应作为节点服务器的响应传递会引发异常

    在某些情况下 当在我的节点 express 服务器上命中特定路由时 我想向 API 发出请求并将该响应直接返回给客户端 我关注了这个堆栈溢出帖子 将服务器端 axios 请求的响应发送到 React Redux 应用程序 https sta
  • 为什么 asp.net mvc 中的部分视图需要下划线

    只是为了区分对话框内使用的视图还是 foreach 循环 客户详细信息 中使用的视图 你不需要下划线 这只是一个约定 而MVC非常热衷于使用约定
  • Ruby on Rails 脚本控制台

    我没能跑 script console以前 它曾经抛出一个错误 因为我script console文件已包含 usr bin env ruby19 进行命中和试验后 我通过替换修复了此错误 usr bin env ruby19 with u
  • 数据声明 Haskell 中的类型约束

    我正在使用 Haskell 并尝试编写以下内容 data Scale s Scale s s 但是 我想做到这一点s必须是 Num 类型类的内容 例如 Int 或 Double 使用 Haskell 和 GHC 可以做到这一点吗 Yes L
  • 正则表达式匹配所有内容,直到最后一次出现 /

    使用正则表达式 Ant 中的 Replaceregexp 如何匹配 然后替换 从行开头到最后一次出现斜杠的所有内容 我需要从以下任何一个开始 replace this keep this replace this replace this
  • 是否存在通过有向图所有顶点的路径?

    给定G 一个有向图 是否存在一条经过G中所有顶点的路径 不一定是简单路径 我首先需要检查非循环图和强连通图中发生的情况 然后使用强连通分量的图找到一般图的解决方案 到目前为止 我已经发现 对于强连通图来说 总有一条路径 对于非循环图 如果有
  • 什么是 premain() 以及如何调用它?

    我从来没有听说过premain我觉得这样问有点愚蠢 但是这篇文章的答案 https stackoverflow com questions 9368764 calculate size of object in java建议运行它以获得In
  • 相对布局的对角溢出背景

    大家好 我想要布局的背景如下 现在我正在做的事情如下
  • Rails 邮件程序 mimepart 在消息正文中显示为文本

    我正在使用 ActionMailer 发送测试邮件 模板正在呈现 邮件正在正常投递 唯一的问题是 Google 在消息正文中显示 mimepart 和其他标头数据 这是邮件的代码 def testing mail to gt email p
  • 字符串排列的时间复杂度

    以下示例取自 破解编码面试 第 6 版 一书 根据本书 以下代码的时间复杂度为 O n 2 n 请参考示例12 第32 33页 public static void main String args new PermutationsTest
  • 学习Python:根据条件更改列表中的值

    抱歉问了这个非常基本的问题 但这实际上是一个由两部分组成的问题 给定一个列表 我需要替换 的值带有 i 和带有整数 10 的 x 列表并不总是具有相同数量的元素 因此我需要一个允许我执行此操作的循环 a 1 7 8 5 x 如何获取值等于
  • 在选项卡中加载不同的活动

    我花了相当长的时间搜索 stackoverflow 和 google 但找不到正确向我解释如何在我的应用程序中实现选项卡的指南 我知道不应该使用 TabActivity 我还阅读了有关不要使用 TabHost 的建议 至少是这样理解的 我的
  • 当我的文本显示为问号时,这意味着什么?

    我正在尝试使用 例如 Windows GDI 在程序中显示一些文本 并且某些 unicode 字符显示为问号 怎么了 也可以看看 当我的文本显示为方框时 这意味着什么 https stackoverflow com questions 21
  • 可变参数模板示例

    考虑下面的代码 我不明白为什么必须定义 print 的空函数 include
  • Windows 转储文件格式

    我一直致力于创建更好的工具来处理我的组织中的转储 对于核心转储 linux 这很简单 因为它们是具有已知格式的 ELF 文件 然而 我们有一些 Windows 系统 它们生成的转储似乎不是 ELF 我知道有 Windows 工具可以处理这些
  • 带有 MarkupExtension 的 IValueConverter

    最近我读到一篇关于IValueConverter它也继承自MarkupExtension 它是这样的 internal class BoolToVisibilityConverter MarkupExtension IValueConver
  • Android 日志记录 - 如何清除以获得更好的性能

    Android新手 刚刚看了http developer android com reference android util Log html http developer android com reference android ut
  • 如何打印随机数菱形?

    有人可以帮我完成这个数字钻石吗 我打印了钻石的右侧 但在打印左侧时遇到了问题 如果有人可以提供帮助 我将非常感激 我对我的代码做了一些更改 我现在需要我的代码在菱形中间打印一列而不是两列 public class NumericDiamon
  • while 循环在需要时未结束

    所以一些背景信息 我是编程新手 仍在学习 所以我为我犯的微不足道的错误道歉 我正在制作自己的基于文本的游戏只是为了进一步练习等 以下是 Dropbox 上所有内容的链接 以了解更多背景信息 https www dropbox com sh