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

【使用してるソフト】
UWSC Free版Ver5.1.0

【環境】
OSはWindows7 64bit版

【用途】
ネトゲマクロ

【今まで出来たこと・しようとしてること】
サイトで拾ったチェッキング関数のサンプルコードなどをコピペしたり画像認識用のスクショを撮ったりコードを多少改変しながら10分ほどの作業マクロが完成しました。

ゲームの内容自体は至極単純なもので画像をクリックしていくだけのただのクリックゲーです。なので
WHILE(CHKIMG("画像A.bmp")=FALSE)~実行したい処理~WEND
WHILE(CHKIMG("画像B.bmp")=FALSE)~実行したい処理~WEND
これが画像A~Jまである感じで、一度ゲームをリセットしてまた1からやる作業です。ソフト側で実行回数を指定してやってます。ゲームの窓がエラー落ちしない限りはずっと作業はしてくれてる感じではあります。
しかしこれだと多少トラブった時などにマクロを途中で止めると画像Aからなので困ってしまいます。
なのでこの処理全体をWHILE true~WENDで囲って中のWHILE(CHKIMG("画像A.bmp")=FALSE)~実行したい処理~WENDの中にBREAK?を入れたら改善されるのかなと考えています。
この作業を2窓でやりたいと考えたりしてます。

【質問】
プログラムを知ってる方からしてみたら自分のコードはグチャグチャで非効率だと思います。
10分ほどの作業ループで1000行以上あります。
この画像が出るまでこうする。
この画像が現れるまでこうする程度の命令文です。
きっと理解してる人なら半分以下でもっと効率のいいスマートなコードが出来るのだろうと考え基礎から勉強しようと思い
UWSEのヘルプやネトゲマクロのサイトなどを参照して独学で学ぼうとしてましたが
「戻値」「返し」の意味がわからず、サイトやヘルプを読めと言われてもそれを理解するだけの最低限の知識がない感じです。
「変数」の意味も調べてみたら「入れ物」としか表現されてなくて。
変数はアルファベット表記じゃないとダメなのでしょうか?でも別のサイトだと
文字列で書いてました。

変数 = 100
ペットボトル = "お茶"
MSGBOX("変数の中身は" + 変数 + "<#CR>" + "ペットボトルの中身は" + ペットボトル)
ペットボトル = "コーラ"
MSGBOX("変数の中身は" + 変数 + "<#CR>" + "ペットボトルの中身は" + ペットボトル)

コードの文字列はコメントアウト以外はダブルクォーテーションで必ず囲まなければならないってヘルプに書いてあったのですがこの「変数」やらペットボトルは文字列なのに囲まなくていい理由がわからず。
そもそも変数というものはアルファベットばかりですけど、日本語や漢字とかでもいいのでしょうか。

他にもIFB 式 とか書かれてて、その式とやらは判定文なのは分かりますがその判定文は具体的に何があるのかとかどうすれば???という感じなんです。

かろうじて理解できたサイトは入門編のこのサイトとかです。
http://necro.jp/dev/uwsc/memo/a004.html
キバヤシ式なども見てみましたが返しや戻り値などの変数を代入などの用語を理解できず断念。
他のサイトも見てみましたが、"<#CR>"なと何を示しているが理解してない言葉が出てきたりして
難航しています。
なんと言いますか、入門編のサイトみたいにプログラムを一行ずつ日本語で簡単に説明してくれたら
「このコードのこの部分は何を指定している」となんとか理解できるのですが
どのサイトもいきなり専門用語が飛び出してきてるので初心者には敷居が高く感じます。

そこで何か分かりやすいサイトはありませんか??
例えばendifはIFBとセットとか、BREAKとは何なのかとか全体を通してではなく
全体の流れの解説だと中身の単語が理解できてないので、一つの単語を例題などを交えて優しく解説してくれてるサイトがあればと思いまして。
参考になる本などでもいいです、初歩中の初歩や基礎から理解していきたいと思います。

A 回答 (3件)

>この本とBasicの入門編の本を購入すれば基礎中の基礎から理解できるようになるでしょうか?


UWSC関連の本があるとは知りませんでしたもで
そういった本があるのならとりあえずそれだけを買って
わからないことは改めて調べるとかでいいのではないかと思いますよ

三個に書いたBasicなどは 文法的に似てると思う と私が思っているだけで
あちこち手を広げてももわからないものはわからないので
    • good
    • 0
この回答へのお礼

ありがとうございます。文法が似てる本と専用の本、両方購入して理解を深めていきたいと思います!

お礼日時:2015/04/12 15:22

No1訂正  (他にもあるかも)


>意味的には普通に16新表記で 0x0d とするのと同じです
言語が混ざりました uwsc では16新表記の場合 $d となります
    • good
    • 0

また貴方か  と思いつつ


雑な流し読み 気が付いたところだけ回答
>そもそも変数というものはアルファベットばかりですけど、日本語や漢字とかでもいいのでしょうか
個人的には日本語・漢字は使いませんがそういったもので定義することは可能です
   厳密には使用する開発言語に依存します(uwscでは可能ってことです)

判定分に関しては説明読めとしか言えません
基本的には人間が比較できる条件はプログラムでも定義できる と考えて問題ありません

>"<#CR>"なと何を示しているが
制御コードの 16進数で13 16進数で0x0d の1バイトデータを意味します
意味的には普通に16新表記で 0x0d とするのと同じです

>文字列なのに囲まなくていい理由
囲ってますけど   "ペットボトルの中身は"
囲わない場合は  ペットボトルの中身は  となり 変数扱いになります

過去に言語開発したことないってことだとUSWCいきなりも難しいのかも
UWSCの専用の入門書といったものは知りりません
文法的にはBasic(VB・VBA等)言語と似たようなものなので
それを理解できればほとんど同じではないかと思います

とにかく通常の開発言語の入門書で基本的な命令などを覚える方がいいのでは?

戻り値:-> ある関数をコール(実行)した際に返される数値の事です
      それによってその関数がどういった状態で終了したのかなどを判定します

前の質問でいえば chkimg¥ にも 戻り値ってある\りますよね
    • good
    • 0
この回答へのお礼

また親切にご回答頂きありがとうございます。感謝の極みです><

『文字列はダブルクォーテーションで囲む』は変数(文字列の場合)となったものは囲まなくていいのですね。
変数に定義するものがアルファベットばかりだったのでアルファベットしか認識しないものだと誤解しておりました。

>文法的にはBasic(VB・VBA等)言語と似たようなものなので
>それを理解できればほとんど同じではないかと思います

>とにかく通常の開発言語の入門書で基本的な命令などを覚える方がいいのでは?

UWSCでどのプログラミング言語を学べばいいのかわからなかったので大変助かります!
『Windows マクロテクニック』というUWSCの本があるみたいですが
http://www.amazon.co.jp/Windows-%E3%83%9E%E3%82% …
この本とBasicの入門編の本を購入すれば基礎中の基礎から理解できるようになるでしょうか?

お礼日時:2015/04/11 19:28

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