If statement 为什么我的Applescript IF循环和;等于;操作员工作不正常?

If statement 为什么我的Applescript IF循环和;等于;操作员工作不正常?,if-statement,applescript,logical-operators,If Statement,Applescript,Logical Operators,我有一个applescript进度条模拟器,我让用户从列表中选择一个菜单项: set gameMenuOption to choose from list simMenu with prompt " Slot: " & item slot of gameslots & " Mulla: $" & gameMulla & " Assets: " & gameAssets & " Speed: " & gameLoadSpeed &

我有一个applescript进度条模拟器,我让用户从列表中选择一个菜单项:

set gameMenuOption to choose from list simMenu with prompt "
Slot: " & item slot of gameslots & "

Mulla: $" & gameMulla & "
Assets: " & gameAssets & "
Speed: " & gameLoadSpeed & "Assets Per Second"
提示基本上是用户的资产、金钱等。因此,当他们从菜单中选择某个内容时,他们还可以查看自己的统计数据。因此,当他们选择某样东西时,它会处理输入:

if gameMenuOption = "Shop" then
    set gameShopOption to choose from list simShop with prompt "Shop: "
else if gameMenuOption is equal to "Load Progress Bar" then
    --not finished yet!
else if gameMenuOption is equal to "Sell Assets" then
    set gameMulla to gameMulla + gameAssets
else
    error -128
end if
if语句不起作用!我已经研究了applescript和操作符上IF循环的语法,并反复阅读了我的代码,但我没有看到任何错误!当用户选择一个选项时,它只返回我故意写的-128错误,但它不应该这样做。。。我甚至用
显示对话框
对其进行了测试:

--> User enters: Sell Assets
display dialog gameMenuOption
--> Returns: Sell Assets
但当我这么做的时候:

display dialog gameMenuOption = "Sell Assets"
--> Returns: False
此外,我认为我需要将其转换为字符串,但这不起作用:
预期表达式,但找到“to”。

请帮帮我

从文档中:

通过将“允许多选”参数设置为true,“从列表中选择”命令可以选择让用户选择多个项目。因此,命令的结果始终是选定字符串的列表

因此,结果永远不会是
“Shop”
。它可能是
{“Shop”}

例如:

set simMenu to {"Shop", "Sell Assets"}
set gameMenuOption to choose from list simMenu with prompt "Blah blah blah"
if gameMenuOption = {"Shop"} then
    display dialog "It worked" // the dialog appears
end if
或者(这可能更常见)你可以说

if item 1 of gameMenuOption = "Shop"

将其转换为字符串难道不起作用吗?我试过了,但没有。。。谢谢你!