【问题标题】:iMacro If Else Statement without Javascript没有 Javascript 的 iMacro If Else 语句
【发布时间】:2013-10-31 04:53:25
【问题描述】:

我目前制作了一个 iMacro 脚本,它使用 ImageSearch 来查找图像并执行其他功能。如果image1匹配imagesearch则执行task1,否则执行task2。

If IMAGESEARCH POS=1 IMAGE=IMAGE1.png CONFIDENCE=65
   TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:bet-amount CONTENT=0.01
   TAG POS=1 TYPE=BUTTON:SUBMIT ATTR=ID:bet-bt

Else If IMAGESEARCH POS=1 IMAGE=IMAGE2.png CONFIDENCE=65
   TAG POS=1 TYPE=BUTTON:SUBMIT ATTR=ID:bet-multiplier
   TAG POS=1 TYPE=BUTTON:SUBMIT ATTR=ID:bet-bt

我该如何做 if 语句?

【问题讨论】:

  • imacros 中没有 IF ELSE 语句

标签: if-statement imacros


【解决方案1】:

您必须使用 JavaScript 脚本。你有一个例子在这里

Loop in Imacros using Javascript

在你的情况下,这将是第一个宏

IMAGESEARCH POS=1 IMAGE=IMAGE1.png CONFIDENCE=65

这将是第二个宏

IMAGESEARCH POS=1 IMAGE=IMAGE2.png CONFIDENCE=65

这将是第三个宏。

   TAG POS=1 TYPE=INPUT:TEXT ATTR=ID:bet-amount CONTENT=0.01
   TAG POS=1 TYPE=BUTTON:SUBMIT ATTR=ID:bet-bt

这将是第四个宏。

TAG POS=1 TYPE=BUTTON:SUBMIT ATTR=ID:bet-multiplier
   TAG POS=1 TYPE=BUTTON:SUBMIT ATTR=ID:bet-bt

这就是它应该的样子。

if(iimPlay(macro1)>0)
{
iimPlay(macro3)
}
else if(iimPlay(macro2)>0)
{
iimPlay(macro4)
}

【讨论】:

  • 我在我的 Firefox 中安装了 imacro,我正在使用 iMacros Browser V8.0。但是,我得到了这个错误 -1100: Can not parse macro line: if(iimPlay("macro1.iim")>0)
  • 为什么 Firefox imacro 面板显示 js 文件而 iMacro 浏览器不显示?
  • 1) 将宏 1 放在 #Current.iim 文件旁边 2) 我不知道第二个问题。使用 FireFox 插件。也很不错。
【解决方案2】:

“imacros 中没有 IF ELSE 语句 – Bestmacros 2013 年 10 月 31 日 8:01”

=> 确实,但是“你必须使用 JavaScript 脚本”。是不正确的...!您可以在纯 '.iim' 中实现一些条件行为,例如在这种情况下:

SET !ERRORIGNORE YES
SET !TIMEOUT_STEP 0

IMAGESEARCH POS=1 IMAGE=IMAGE1.png CONFIDENCE=65
SET ClickAmount EVAL("var y='{{!IMAGEY}}'; var z; if(y>0){z=1;} else{z=0;}; z;")
TAG POS={{ClickAmount}} TYPE=INPUT:TEXT ATTR=ID:bet-amount CONTENT=0.01
TAG POS={{ClickAmount}} TYPE=BUTTON:SUBMIT ATTR=ID:bet-bt

IMAGESEARCH POS=1 IMAGE=IMAGE2.png CONFIDENCE=65
SET ClickMultiplier EVAL("var y='{{!IMAGEY}}', a='{{ClickAmount}}'; var z; if(a==1){z=0;} else if(y>0){z=1;} else{z=0;}; z;")
TAG POS={{ClickMultiplier}} TYPE=BUTTON:SUBMIT ATTR=ID:bet-multiplier
TAG POS={{ClickMultiplier}} TYPE=BUTTON:SUBMIT ATTR=ID:bet-bt

=> 所有 'IF/ELSE' 逻辑都在一个 '.iim' 宏中,非常类似于 @OP 的原始脚本,并且可以直接在 iMB 或 IE 中工作,而不是使用需要主 '.js 的 4 个脚本' 仅适用于 FF 的脚本...!

(未经测试,我从未使用过“IMAGESEARCH”,因为我只使用免费的附加组件(带有 FF),根据 Wiki,“!IMAGEX”和“!IMAGEY”应该保存坐标,如果找到图像,我想有效坐标必须> 0,至少对于'!IMAGEY'。'!IMAGEX'和'!IMAGEY'变量可能需要在第二个'IMAGESEARCH'之前重置为'NULL',如果它不会自动发生...(我无法测试...))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 2016-06-21
    • 2015-05-16
    • 2012-07-18
    • 2018-01-21
    相关资源
    最近更新 更多