dポイントプレゼントキャンペーン実施中!

uwscについて最近知り、単純な動作や関数は多少扱えるようになってきたのですが
どうしてもつまずいてしまったので、わかる方がいましたら教えていただきたく思います


1つ目

もし画像(1)を見つけた場合、ボタンAを1度だけ押す
 以降、画像(2)を見つけるまでボタンBを一定の間隔で押し続ける
そして画像(2)を見つけた場合、画像(1)が見つかるまでボタンCを押す
画像(1)が60秒見つからない場合、動作Aをする
最初の画像(1)まで戻りループ

2つ目

画像(1)か(2)を見つけた場合、ボタンAを1度だけ押し
以降(1)を見つけた場合は画像(3)、(2)を見つけた場合は画像(4)を見つけるまでボタンBを押し続け
画像(5)か(6)を見つけた場合、画像(1)か(2)が見つからない場合、動作Aをする
最初の画像(1)に戻りループ


この2つのスクリプトを教えてください、お願い致します

A 回答 (1件)

その、ボタンAだのBだのがどういうものなのかでやり方が違いますけど、これなら動くであろうという方法で。

ただし動作テストはしてないので、だめだったら自力で修正してください。

//以下の変数にボタンA,B,CをクリックするX,Y座標を記入するのじゃ
btnA_x=
btnA_y=
btnB_x=
btnB_y=
btnC_x=
btnC_y=
//以下の変数にボタンB,Cのクリック間隔を記入するのじゃ(単位はミリ秒、1000で1秒)
//変数clkAがないのは、ボタンAは1回しか押さないからだ
//この値は20以上がお勧め。Windowsで10ミリ秒程度の間隔は取りこぼしの危険がある
clkB=
clkC=
//
//メインループ
While TRUE
  //ありえない高速連打になるのを避けるために少しだけ待つ
  Sleep(0.1)
  //最初のクリック
  //ChkImg関数の頭に!が付いているのは、画像がなかったらという意味にしたいため
  If !ChkImg("画像(1)") Then Continue
  Btn(LEFT,CLICK,btnA_x,btnA_y,20)
  //画像2を待つループ
  While !ChkImg("画像(2)")
    Btn(LEFT,CLICK,btnB_x,btnB_y,clkB)
  Wend
  //画像1を待つループ
  //待ち時間が1分なので、60000ミリ秒(つまり1分)をclkCで割った回数だけループする
  For i = 1 To 60000/clkC
    If ChkImg("画像(1)") Then Break
    Btn(LEFT,CLICK,btnC_x,btnC_y,clkC)
  Next
Wend

二番目のスクリプトは自分で頑張ってみてください。
    • good
    • 0
この回答へのお礼

迅速な回答感謝します、ボタンAは任意のキーを表したつもりだったのですが
上手く伝わらなかったようで申し訳ないです

まだまだ自分の力が追いついてなく不甲斐ないばかりですが
解説を読みつつ、2番目は自分で頑張って組んでみます
本当にありがとうございました、機会があればまたお願い致します

お礼日時:2011/03/13 13:59

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!