如何在 Lua 中使用多个 If?

     2023-03-28     221

关键词:

【中文标题】如何在 Lua 中使用多个 If?【英文标题】:How do I use multiple If's in Lua? 【发布时间】:2017-05-15 14:40:28 【问题描述】:

我正在尝试在我的 ROBLOX 场所制作 UFO,并希望创建一个系统,当 UFO 从头顶经过时播放音频。我创建了一个部件,将音频插入到部件中,然后在部件中放置了一个脚本。所以它看起来像:

部分->音频->脚本

我计划系统在触摸人形机器人时进行注册,如果部件的运行速度比说每秒 300 个螺柱快,我希望它播放音频(最好只为人播放音频(s ) 被部分触及)所以我写了一个脚本如下:

while true do
if script.parent.parent.Velocity.Magnitude>299 then 
    script.Parent:play()
    wait(5)
    script.Parent:stop()
else
    wait()
end
wait()

结束

如您所见,我错过了关于被触摸的人形机器人的部分,但我不知道该怎么写。我真的是脚本新手,我不知道这些命令的正确上下文(?)。非常感谢您的帮助。

谢谢!

【问题讨论】:

【参考方案1】:

你可以使用 Lua 的逻辑运算符:'and'、'or' 和 'not' 是最常用的。在你的情况下,听起来你想做这样的事情:

if (condition1) and (condition2) then
    play_sound()
else
    wait()
end

你也可以“嵌套” if 语句:

if condition1 then
    if condition2 then
        do_something()
    end
end

【讨论】:

所以到目前为止我的脚本是:【参考方案2】:

除了@Will 的回答,您还可以使用elseif 来检查不同的条件。

if (conditionA) then
elseif (conditionB) then
end

如果条件A为真,则不会检查下一条语句,因此顺序很重要。

while true do
if script.parent.parent.Velocity.Magnitude>299 then 
 if(humanoidIsTouchedd()) then
    script.Parent:play()
    wait(5)
    script.Parent:stop()
 elseif (somethingElseIsTouched())
    doSomethingElse()
 else
    wait()
end
wait()

【讨论】:

如何在 th:if 标记中使用 thymeleaf 有多个条件

】如何在th:if标记中使用thymeleaf有多个条件【英文标题】:Howtohavemultipleconditioninanth:iftagusingthymeleaf【发布时间】:2013-04-0718:25:51【问题描述】:我有一个文本要使用thymeleaf以三种可能的颜色呈现。所以到目前为止我为测试该值所... 查看详情

如何在 Shiny 中使用 if 语句选择多个输入案例?

】如何在Shiny中使用if语句选择多个输入案例?【英文标题】:HowtoselectmultipleinputcaseusingifstatementinShiny?【发布时间】:2019-05-2023:40:30【问题描述】:我正在开发一个闪亮的应用程序来更好地可视化地震。我有两个属性,它们是深... 查看详情

如何让 lua 在 while true 循环中停止 if 循环?

】如何让lua在whiletrue循环中停止if循环?【英文标题】:HowwouldImakealuastopanifloopinsideawhiletrueloop?【发布时间】:2016-10-0718:04:22【问题描述】:这是一个很难问的问题,因为我不可能将所有内容都放入一个问题中,但我可以解释这... 查看详情

html如何在带有liquid的if语句中使用多个参数(代码片段)

查看详情

如何使用“else if”在 Makefile.am 中编写多个条件

】如何使用“elseif”在Makefile.am中编写多个条件【英文标题】:HowtowritemultipleconditionsinMakefile.amwith"elseif"【发布时间】:2011-11-0902:01:53【问题描述】:我想用autoconf/automake编译我的项目。我的configure.ac中定义了2个条件AM_COND... 查看详情

java示例代码_在java中,如何使用isAssignableFrom的映射避免多个if-else

java示例代码_在java中,如何使用isAssignableFrom的映射避免多个if-else 查看详情

如何在 Django 的视图中清理多个嵌套的 if 语句

】如何在Django的视图中清理多个嵌套的if语句【英文标题】:HowtocleanupmultiplenestedifstatementsinsideviewsinDjango【发布时间】:2016-02-0815:22:20【问题描述】:我正在处理一个Django项目,其中一个视图看起来像这样,带有多个ifelse语句。... 查看详情

如何使我的多个 if 语句起作用?或者最好如何在我的代码中使用嵌套循环

】如何使我的多个if语句起作用?或者最好如何在我的代码中使用嵌套循环【英文标题】:HowcanImakemymultipleifstatementswork?OrpreferablyhowdoIusenestedloopsinmycode【发布时间】:2019-03-1312:08:51【问题描述】:我想做的是转换我的变量:table="... 查看详情

如何在 if else 循环中对同一数据使用多个条件? - java/安卓

】如何在ifelse循环中对同一数据使用多个条件?-java/安卓【英文标题】:Howtousemultipleconditionsonthesamedatainanifelseloop?-java/android【发布时间】:2012-06-1619:21:21【问题描述】:我有3个edittexts输入类型为number和1个button表示Done我必须检... 查看详情

如何使用spring webflux在功能性反应java中编写具有多个if else的复杂代码

】如何使用springwebflux在功能性反应java中编写具有多个ifelse的复杂代码【英文标题】:Howtowritecomplexcodewithmultipleifelseinfunctionalreactivejavausingspringwebflux【发布时间】:2019-09-2201:58:38【问题描述】:我是RXjava函数式编程的新手。我正... 查看详情

如何并行运行单个lua脚本对多个redis值?(代码片段)

在Redis中,我们有表示输入值的字符串。我们(希望)拥有一个动态生成的Lua脚本(在用户使用GUI定义之后),该脚本根据输入字符串计算结果字符串。每组输入值彼此独立。所以这应该是平凡的并行,但是,EVAL似乎阻止直到完... 查看详情

如何在 elisp 'if' 语句中编写多个语句?

】如何在elisp\\\'if\\\'语句中编写多个语句?【英文标题】:Howcanyouwritemultiplestatementsinelisp\'if\'statement?如何在elisp\'if\'语句中编写多个语句?【发布时间】:2010-10-2901:56:58【问题描述】:在elisp中,有一个“如果”的情况,我想执... 查看详情

在 XSLT 中,如何使用存在多个相同节点的 ID 从节点中选择一个值?

】在XSLT中,如何使用存在多个相同节点的ID从节点中选择一个值?【英文标题】:InXSLThowtoselectavaluefromanodeusingIDsinwhichthereismultipleofthesamenodes?【发布时间】:2020-05-0212:45:32【问题描述】:我正在尝试从具有相同名称的多个节点中... 查看详情

为啥在 Lua 中使用本地需求?

】为啥在Lua中使用本地需求?【英文标题】:WhyuselocalrequireinLua?为什么在Lua中使用本地需求?【发布时间】:2016-08-1717:05:38【问题描述】:这有什么区别localaudio=require"audio"和require"audio"前者有什么优势吗?【问题讨论】:【参考... 查看详情

lua如何最快速度入门

Lua脚本语法说明(修订)Lua脚本语法说明(增加lua5.1部份特性)Lua的语法比较简单,学习起来也比较省力,但功能却并不弱。所以,我只简单的归纳一下Lua的一些语法规则,使用起来方便好查就可以了。估计看完了,就懂得怎么... 查看详情

如何使用 Nodemcu (Lua) 进行多个串行通信

】如何使用Nodemcu(Lua)进行多个串行通信【英文标题】:HowtomakemultipleserialcommunicationusingNodemcu(Lua)【发布时间】:2020-07-1003:25:32【问题描述】:____________|||N||ORx2|<------TxEnergyMeter(Returnsvaluebasedoncommand)|DTx2|------>RxEnergyMeter 查看详情

如何在 JSTL 中使用 if-else 选项

】如何在JSTL中使用if-else选项【英文标题】:Howtouseif-elseoptioninJSTL【发布时间】:2011-06-0300:15:33【问题描述】:JSTL中有if-else标签吗?【问题讨论】:if...elsewithinJSPorJSTL的可能重复【参考方案1】:除了需要else之外,在许多情况下... 查看详情

如何在lua中嵌入java代码

】如何在lua中嵌入java代码【英文标题】:HowcanIEmbedjavacodeinlua【发布时间】:2018-12-2602:42:07【问题描述】:我想在lua语言中包含我的java代码。我为此尝试了ffi但卡住了。谁能告诉我如何在lua中包含java代码?用基本的例子解释。... 查看详情