※このUWSCスクリプトは、多忙でヒマがない人向けです。勝利を保証するものではありません。

※PCアプリで解像度 960x640 専用です。

 

(17/08/16)

・牌カラーを変更していても動作するように対応

・更に精度の向上

 

(17/08/15) 

・九種九牌倒牌、天和・人和・地和の判定精度の向上

 

(17/08/12 ) 

・Ver4.5の画面の仕様変更に対応

 

・第一ツモの時、暗カン可能時、代走ボタンが出てこないのでカンするようにした。

・天和・人和・地和で自動和了できるようにした。

・九種九牌時に倒牌できるようにした。

・天和・人和・地和ですぐにドボンで終了した場合に、止まってしまうのを修正

・九種九牌倒牌、天和・人和・地和の和了り時とその時の役、ボーダー到達時の戦績画面などを

 画面キャプチャーするようにした。

・SKIPボタンのウエイト微調整

・獲得回数が2回目になったら自動終了

----------------

 

毎月のFREE対戦8試合+50.0以上で200G消化を2回やるのが

面倒臭いと感じて暇がない人のために、東風 自動CPU代走 スクリプトを作ってみた。

 

CPU代走についての説明は、こちら

 

 

CPU代走.uws (識別用画像ファイルのダウンロードは→こちら(zip書庫形式)

------------------------ここから----------------------------

//毎月FREE対戦 8試合+50.0以上で200Gx2回=400Gの消化が

//かなり面倒臭く感じてヒマがない方達の為に作った・・・

//

// <<<< CPU代走(FREE対戦 東風)自動Script  >>>>

//

//●九種九牌倒牌・天和・人和・地和対応(自動キャプチャあり)

//●ボーダー到達時、スコア自動キャプチャ(獲得数2回目で自動終了)

//●暗槓可能時、自動カンした後に代走(代走ボタンが出てこない為)

//※PCアプリ用 画面解像度 960x640 専用

//※※反応が遅いPC環境によっては

//wait関数[sleep()]を間に入れる必要あり

//また認識する色幅[IMG_MSK_BGR]も入れる必要あり

 

//画像格納フォルダ指定

fol1 ="C:\MJ_IMG\"

//拡張子を指定

bmp =".BMP"

//画像に変数を定義

TONPUB =fol1+"tonpu" +bmp

DAIHAIB =fol1+"daihai" +bmp

 

AGA1B =fol1+"aga1" +bmp

AGA2B =fol1+"aga2" +bmp

AGA3B =fol1+"aga3" +bmp

AGA4B =fol1+"aga4" +bmp

AGA5B =fol1+"aga5" +bmp

 

KYU1B =fol1+"9s9h1" +bmp

KYU2B =fol1+"9s9h2" +bmp

KYU3B =fol1+"9s9h3" +bmp

KYU4B =fol1+"9s9h4" +bmp

KYU5B =fol1+"9s9h5" +bmp

 

SKIPB =fol1+"skipg" +bmp

CANCELB =fol1+"canon" +bmp

OKMJB =fol1+"okmj" +bmp

SYURB =fol1+"syuryo" +bmp

KAKU22 =fol1+"b22" +bmp

 

KANNNB =fol1+"kanon" +bmp

CANHB =fol1+"canhai" +bmp

ZEROB =fol1+"zero" +bmp

TOTAB =fol1+"totatu" +bmp

 

DAIKB =fol1+"daikai" +bmp

CHUDB =fol1+"chudan" +bmp

 

 

 

// 見つけるウインドウのタイトルを指定する(一部でOK)

mjid = GETID("セガNET麻雀MJ","UnityWndClass")

ifb mjid<0

MSGBOX("エラー、対象ウインドウが見つかりません")

exitexit

endif

 

//メイン画面を取り込む

CTRLWIN( mjid, ACTIVATE )

MOUSEORG( mjid , MORG_CLIENT, MORG_FORE )

 

FOR DDDDD    = 1 TO 9999999

FOR MJMFREE1 = 1 TO 9999999

 

//東風開始ボタンが出るまで繰り返す

repeat

CTRLWIN( mjid, ACTIVATE )

FreeT = CHKIMG(TONPUB,,ST_X+620,ST_Y+250,ST_X+680,ST_Y+275,1,IMG_MSK_BGR4)

until FreeT

// 東風ボタン、クリック

BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,100)

 

// 卓上画面が出るまで繰り返す

repeat

CTRLWIN( mjid, ACTIVATE )

migiueT = CHKIMG(CANHB,,ST_X+897,ST_Y+452,ST_X+951,ST_Y+452,1,IMG_MSK_BGR2)

until migiueT

 

// アシスト座標(20,275)

 

sleep(1)

 

// 代走ボタン(灰色)が出てない場合アシストボタンをクリック

repeat

CTRLWIN( mjid, ACTIVATE )

HaiT = CHKIMG(DAIHAIB,,ST_X+90,ST_Y+300,ST_X+100,ST_Y+310,1,IMG_MSK_BGR3)

//代走灰色ボタンが出ていたらrepeatから脱出

IF HaiT Then Break

//アシストボタンを押す

BTN(LEFT,CLICK,20,275,100)

Until HaiT

//代走灰色ボタンの座標を別変数に格納

GGX = G_IMG_X

GGY = G_IMG_Y

 

sleep(1)

 

//###代走灰色ボタンが無くなるまで繰り返す

repeat

CTRLWIN( mjid, ACTIVATE )

DaisoU = !CHKIMG(DAIHAIB,,ST_X+90,ST_Y+300,ST_X+100,ST_Y+310,1,IMG_MSK_BGR3)

 

 

//%%アガリボタン(天和、地和、人和)が出たらアガリをクリック

AGA1C = CHKIMG(AGA1B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA2C = CHKIMG(AGA2B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA3C = CHKIMG(AGA3B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA4C = CHKIMG(AGA4B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA5C = CHKIMG(AGA5B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGAPP = AGA1C or AGA2C or AGA3C or AGA4C or AGA5C

IF AGAPP Then

 

SLEEP(0.5)

 

 

// 日時取得してキャプチャ保存

GETTIME()

year =    G_TIME_YY

month ="0"+G_TIME_MM

day ="0"+G_TIME_DD

hour ="0"+G_TIME_HH

mn ="0"+G_TIME_NN

sec ="0"+G_TIME_SS

TimeA=COPY(year,LENGTH(year)-1)+COPY(month, LENGTH(month)-1)+COPY(day, LENGTH(day)-1)+COPY(hour, LENGTH(hour)-1)+COPY(mn, LENGTH(mn)-1)+COPY(sec, LENGTH(sec)-1)

savefile1 = fol1+"了"+TimeA +bmp

CTRLWIN( mjid, ACTIVATE )

saveimg(savefile1 , mjid ,,,,,TRUE)

SLEEP(0.5)

CTRLWIN( mjid , ACTIVATE )

//ボタンをクリック

BTN(LEFT,CLICK,456,427,100)

//スキップボタンが出るまで繰り返す

repeat

sleep(1)

CTRLWIN( mjid , ACTIVATE )

SkipT = CHKIMG(SKIPB,,ST_X+800,ST_Y+575,ST_X+820,ST_Y+590,1,IMG_MSK_BGR4)

until SkipT

 

//スキップ座標位置を別変数に格納する

S1X=G_IMG_X+10

S1Y=G_IMG_Y+10

sleep(1)

 

//スキップボタンがなくなるまで画像認識

 

repeat

 

CTRLWIN( mjid , ACTIVATE )

USkipT = !CHKIMG(SKIPB,,ST_X+800,ST_Y+575,ST_X+820,ST_Y+590,1,IMG_MSK_BGR4)

ZEROT = CHKIMG(ZEROB,,ST_X+745,ST_Y+565,ST_X+760,ST_Y+573,1,IMG_MSK_BGR4)

 

//役が出たら、キャプチャ保存

IF ZEROT Then

//日時などを取得してキャプチャ保存

GETTIME()

year =    G_TIME_YY

month ="0"+G_TIME_MM

day ="0"+G_TIME_DD

hour ="0"+G_TIME_HH

mn ="0"+G_TIME_NN

sec ="0"+G_TIME_SS

TimeA=COPY(year,LENGTH(year)-1)+COPY(month, LENGTH(month)-1)+COPY(day, LENGTH(day)-1)+COPY(hour, LENGTH(hour)-1)+COPY(mn, LENGTH(mn)-1)+COPY(sec, LENGTH(sec)-1)

savefile1 = fol1+"役"+TimeA +bmp

saveimg(savefile1 , mjid ,,,,,TRUE)

SLEEP(0.2)

CTRLWIN( mjid, ACTIVATE )

//スキップボタンをクリック

BTN(LEFT,CLICK,S1X,S1Y,50)

SLEEP(0.5)

EndIf

 

CTRLWIN( mjid, ACTIVATE )

//すぐにドボンで終了して対戦メニューに戻ってしまったらループ抜ける

EndT = CHKIMG(SYURB,,ST_X+265,ST_Y+340,ST_X+275,ST_Y+355,1,IMG_MSK_BGR2)

IF EndT Then

//qq

MMV(G_IMG_X,G_IMG_Y)

//スキップボタンが出るまで繰り返す

repeat

sleep(1)

CTRLWIN( mjid , ACTIVATE )

SkipT = CHKIMG(SKIPB,,ST_X+800,ST_Y+575,ST_X+820,ST_Y+590,1,IMG_MSK_BGR4)

until SkipT

//スキップ座標位置を別変数に格納する

S1X=G_IMG_X+5

S1Y=G_IMG_Y+5

sleep(1)

//スキップボタンがなくなるまでスキップボタンをクリック

 

Repeat

CTRLWIN( mjid , ACTIVATE )

 

//ボーダー到達時に画面キャプチャ

TOTAT = CHKIMG(TOTAB,,ST_X+677,ST_Y+450,ST_X+685,ST_Y+460,1,IMG_MSK_BGR4)

IF TOTAT Then

GETTIME()

year =    G_TIME_YY

month ="0"+G_TIME_MM

day ="0"+G_TIME_DD

hour ="0"+G_TIME_HH

mn ="0"+G_TIME_NN

sec ="0"+G_TIME_SS

TimeA=COPY(year,LENGTH(year)-1)+COPY(month, LENGTH(month)-1)+COPY(day, LENGTH(day)-1)+COPY(hour, LENGTH(hour)-1)+COPY(mn, LENGTH(mn)-1)+COPY(sec, LENGTH(sec)-1)

savefile1 = fol1+"達"+TimeA +bmp

saveimg(savefile1 , mjid ,,,,,TRUE)

Sleep(0.2)

EndIf

//獲得条件が2/2だったら終了する

KAKUM = CHKIMG(KAKU22,,ST_X+645,ST_Y+465,ST_X+705,ST_Y+500,1,IMG_MSK_BGR4)

IF KAKUM Then exitexit

//スキップボタンをクリック

SLEEP(0.2)

CTRLWIN( mjid , ACTIVATE )

BTN(LEFT,CLICK,S1X,S1Y,5)

SLEEP(1.5)

CTRLWIN( mjid, ACTIVATE )

USkipT = !CHKIMG(SKIPB,,ST_X+800,ST_Y+575,ST_X+820,ST_Y+590,1,IMG_MSK_BGR4)

Until USkipT

//qq

break 2

EndIf

 

SLEEP(1)

Until USkipT

 

// 卓上画面が出るまで繰り返す

repeat

CTRLWIN( mjid, ACTIVATE )

migiueT = CHKIMG(CANHB,,ST_X+897,ST_Y+452,ST_X+951,ST_Y+452,1,IMG_MSK_BGR2)

until migiueT

EndIf

 

sleep(0.01)

 

 

//%%

 

//\\●●九種九牌ボタンが出たらクリック●●

//※倒牌しない場合は、TTA=0 に書き換える

TTA=1

 

KYU1C = CHKIMG(KYU1B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU2C = CHKIMG(KYU2B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU3C = CHKIMG(KYU3B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU4C = CHKIMG(KYU4B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU5C = CHKIMG(KYU5B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYUPP = KYU1C or KYU2C or KYU3C or KYU4C or KYU5C

IF KYUPP and TTA Then

 

SLEEP(0.5)

 

// 日時取得してキャプチャ保存

GETTIME()

year =    G_TIME_YY

month ="0"+G_TIME_MM

day ="0"+G_TIME_DD

hour ="0"+G_TIME_HH

mn ="0"+G_TIME_NN

sec ="0"+G_TIME_SS

TimeA=COPY(year,LENGTH(year)-1)+COPY(month, LENGTH(month)-1)+COPY(day, LENGTH(day)-1)+COPY(hour, LENGTH(hour)-1)+COPY(mn, LENGTH(mn)-1)+COPY(sec, LENGTH(sec)-1)

savefile1 = fol1+"倒"+TimeA +bmp

CTRLWIN( mjid, ACTIVATE )

saveimg(savefile1 , mjid ,,,,,TRUE)

SLEEP(0.5)

CTRLWIN( mjid , ACTIVATE )

BTN(LEFT,CLICK,441,418,100)

SLEEP(0.5)

//卓上画面が消えるまで繰り返す

repeat

CTRLWIN( mjid, ACTIVATE )

migiueT = !CHKIMG(CANHB,,ST_X+897,ST_Y+452,ST_X+951,ST_Y+452,1,IMG_MSK_BGR2)

SLEEP(1)

until migiueT

SLEEP(1)

// 卓上画面が出るまで繰り返す

repeat

CTRLWIN( mjid, ACTIVATE )

migiueT = CHKIMG(CANHB,,ST_X+897,ST_Y+452,ST_X+951,ST_Y+452,1,IMG_MSK_BGR2)

until migiueT

 

EndIf

//\\---------------------------

 

 

 

CTRLWIN( mjid , ACTIVATE )

 

//キャンセルボタンあり、アガリボタンなしの場合にクリック

AGA1C = CHKIMG(AGA1B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA2C = CHKIMG(AGA2B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA3C = CHKIMG(AGA3B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA4C = CHKIMG(AGA4B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA5C = CHKIMG(AGA5B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

UAGAPP = !(AGA1C or AGA2C or AGA3C or AGA4C or AGA5C )

Cancel = CHKIMG(CANCELB,,ST_X+897,ST_Y+451,ST_X+951,ST_Y+451,1,IMG_MSK_BGR4)

IF Cancel and UAGAPP Then

 

//キャンセルボタンを押す

BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,100)

EndIf

sleep(0.01)

//----------

// 第一ツモ時、カンボタンのみで代走が押せない時にカンをする

AGA1C = CHKIMG(AGA1B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA2C = CHKIMG(AGA2B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA3C = CHKIMG(AGA3B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA4C = CHKIMG(AGA4B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

AGA5C = CHKIMG(AGA5B,,ST_X+456,ST_Y+427,ST_X+508,ST_Y+427,1,IMG_MSK_BGR4)

UAGAPP = !(AGA1C or AGA2C or AGA3C or AGA4C or AGA5C )

KYU1C = CHKIMG(KYU1B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU2C = CHKIMG(KYU2B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU3C = CHKIMG(KYU3B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU4C = CHKIMG(KYU4B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

KYU5C = CHKIMG(KYU5B,,ST_X+441,ST_Y+418,ST_X+517,ST_Y+418,1,IMG_MSK_BGR4)

UKYUPP = !(KYU1C or KYU2C or KYU3C or KYU4C or KYU5C )

CANHT  = CHKIMG(CANHB,,ST_X+897,ST_Y+452,ST_X+951,ST_Y+452,1,IMG_MSK_BGR2)

KANNNT = CHKIMG(KANNNB,,ST_X+786,ST_Y+452,ST_X+819,ST_Y+452,1,IMG_MSK_BGR4)

IF KANNNT and CANHT and UAGAPP and UKYUPP Then

//カンボタンを押す

BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,100)

EndIf

 

 

until DaisoU

//##

 

 

//代走(灰色)が青色に変わったので代走青ボタンをクリック

CTRLWIN( mjid, ACTIVATE )

BTN(LEFT,CLICK,GGX,GGY,100)

 

// OKボタンが出るまで繰り返す

repeat

CTRLWIN( mjid, ACTIVATE )

okT = CHKIMG(OKMJB,-1,ST_X+320,ST_Y+482,ST_X+330,ST_Y+490,1)

until okT

// OKボタンを押す

BTN(LEFT,CLICK,G_IMG_X+5,G_IMG_Y+5,100)

 

 

 

//// 動作テスト用script。CPU戦のメニュー画面にて使用''''''''''''''

//sleep(0.1)

////代走解除ボタンが出るまで繰り返す

//repeat

//dk = CHKIMG(DAIKB,-1,ST_X+480,ST_Y+347,ST_X+500,ST_Y+365,1,IMG_MSK_BGR2)

//until dk

//CTRLWIN( mjid , ACTIVATE )

////代走解除ボタンをクリック

//BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,100)

////中断ボタン画像が出るまで繰り返す

//repeat

//cd = CHKIMG(CHUDB,,ST_X+15,ST_Y+125,ST_X+30,ST_Y+135,1,IMG_MSK_BGR4)

//until cd

////中断ボタンをクリック

//CTRLWIN( mjid , ACTIVATE )

//BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,100)

////終了OKボタン画像が出るまで繰り返す

//repeat

//okok = CHKIMG(OKMJB,-1,ST_X+318,ST_Y+338,ST_X+340,ST_Y+345,1,IMG_MSK_BGR2)

//until okok

////OKボタンをクリック

//CTRLWIN( mjid , ACTIVATE )

//BTN(LEFT,CLICK,G_IMG_X,G_IMG_Y,100) 

//// FOR NEXT ループから一旦抜ける

//break

//// ''''''''''''''''''''''''''''''''''''''''''''''''

 

// 試合が終わるのが出るまで繰り返す

repeat

sleep(2.5)

EndT = CHKIMG(SYURB,,ST_X+265,ST_Y+340,ST_X+275,ST_Y+355,1,IMG_MSK_BGR2)

until EndT

 

MMV(G_IMG_X,G_IMG_Y)

 

//スキップボタンが出るまで繰り返す

repeat

sleep(1)

CTRLWIN( mjid , ACTIVATE )

SkipT = CHKIMG(SKIPB,,ST_X+800,ST_Y+575,ST_X+820,ST_Y+590,1,IMG_MSK_BGR4)

until SkipT

//スキップ座標位置を別変数に格納する

S1X=G_IMG_X+5

S1Y=G_IMG_Y+5

sleep(1)

//スキップボタンがなくなるまでスキップボタンをクリック

 

Repeat

CTRLWIN( mjid , ACTIVATE )

//ボーダー到達時に画面キャプチャ

TOTAT = CHKIMG(TOTAB,,ST_X+677,ST_Y+450,ST_X+685,ST_Y+460,1,IMG_MSK_BGR4)

IF TOTAT Then

GETTIME()

year =    G_TIME_YY

month ="0"+G_TIME_MM

day ="0"+G_TIME_DD

hour ="0"+G_TIME_HH

mn ="0"+G_TIME_NN

sec ="0"+G_TIME_SS

TimeA=COPY(year,LENGTH(year)-1)+COPY(month, LENGTH(month)-1)+COPY(day, LENGTH(day)-1)+COPY(hour, LENGTH(hour)-1)+COPY(mn, LENGTH(mn)-1)+COPY(sec, LENGTH(sec)-1)

savefile1 = fol1+"達"+TimeA +bmp

saveimg(savefile1 , mjid ,,,,,TRUE)

Sleep(0.1)

EndIf

//獲得条件が2/2だったら終了する

KAKUM = CHKIMG(KAKU22,,ST_X+645,ST_Y+465,ST_X+705,ST_Y+500,1,IMG_MSK_BGR4)

IF KAKUM Then exitexit

SLEEP(0.1)

CTRLWIN( mjid , ACTIVATE )

BTN(LEFT,CLICK,S1X,S1Y,3)

SLEEP(1.5)

CTRLWIN( mjid , ACTIVATE )

USkipT = !CHKIMG(SKIPB,,ST_X+800,ST_Y+575,ST_X+820,ST_Y+590,1,IMG_MSK_BGR4)

Until USkipT

NEXT

NEXT

------------------------ここまで----------------------------

 

識別用画像ファイルをダウンロードした後

画像格納フォルダに解凍 (例: C:\MJ_IMG\ )

CPU代走.uws を作成して、UWSCで実行させる。

実行する時には、FREE対戦メニュー画面で待機しておく

(CPU対戦メニュー画面待機でも注釈をいじればテスト用に一応使えます)

(17/05/13 17:00 修正) ID入力画面(MJM-ID,SEGA-IDの両方)からでもログインできるようにした。
------------------------------------
セガNET麻雀MJ<PCアプリ>にて
いちいちMJM-IDとPASSWORDを入れたりするのが面倒な人用に
自動ログイン用スクリプトを作ってみた。
MJログイン.uws
IDPASS.uws
の二つを作り、IDPASS.uwsに、IDとパスワードを定義した後
call関数にてMJログイン.uwsを読み込む形。
MJログイン.uwsには、ログインの仕方を自動化するスクリプトを作る。


● MJログイン.uws (認識画像ファイルのダウンロードは → こちら (zip書庫形式))
- - - こ こ か ら - - -
// ※PCアプリ用 
// 画面サイズ960x640専用
// ※※反応が遅いPC環境によっては
// ウエイト関数[sleep()]を間に入れる必要あり
// また画像を認識する色幅[IMG_MSK_BGR]も入れる必要あり

//画像格納フォルダ指定
fol1    ="C:\MJ_SEGA\"
//拡張子を指定
bmp        =".BMP"
//画像に変数を定義
MJMB    =fol1+"MJMID"    +bmp
SEGB    =fol1+"SEGAID"        +bmp
IDNB    =fol1+"ID入力"        +bmp


// 見つけるウインドウのタイトルを指定する(一部でOK)
mjid = GETID("セガNET麻雀MJ","UnityWndClass")  
ifb mjid<0
    MSGBOX("エラー、対象ウインドウが見つかりません")
    exitexit
endif

// 画面を認識し取り込む
MOUSEORG( mjid , MORG_CLIENT , MORG_FORE )
CTRLWIN( mjid, ACTIVATE )
//画面上の基点へ移動する
MMV(ST_X,ST_Y)

SLEEP(0.5)

FOR SGS=1 TO 9999999
CTRLWIN( mjid, ACTIVATE )
//ID入力ボタンを認識したらクリック
IDN        = CHKIMG(IDNB,,ST_X+50,ST_Y+600,ST_X+80,ST_Y+625,1,IMG_MSK_BGR4)
IF IDN Then
//ID入力ボタンを押す
    BTN(LEFT,CLICK,70,615,100)
EndIf
SLEEP(0.1)
//SEGAID認識を認識したらMJMID入力をクリック
SEGDD    = CHKIMG(SEGB,,ST_X+170,ST_Y+140,ST_X+210,ST_Y+200,1,IMG_MSK_BGR4)
IF SEGDD Then
    BTN(LEFT,CLICK,690,430,100)
EndIf
SLEEP(0.1)
//MJM-ID画面認識したらクリック
MJMIDD    = CHKIMG(MJMB,,ST_X+170,ST_Y+140,ST_X+210,ST_Y+200,1,IMG_MSK_BGR4)
IF MJMIDD Then
// MJMID枠をクリック
    BTN(LEFT,CLICK,450,155,100)
//MJMIDを入力
    SENDSTR(mjid,MJMID01)
// パスワードを押す
    BTN(LEFT,CLICK,450,250,100)
//パスワード入力
    SENDSTR(mjid,PASS01)
//LOGINボタンを押す
    BTN(LEFT,CLICK,490,430,100)
    Break
EndIf
NEXT
- - - こ こ ま で - - - 


● IDPASS.uws
----------ここから--------------
//MJMIDとPASSWORDを他スクリプトで共通させるための定義
public MJMID01
public PASS01
//ここに、MJM-IDとそのPASSWORDを入れる
MJMID01    ="mjmXXXXXXXX"
PASS01    ="XXXXXXXX"
call MJログイン.uws
----------ここまで--------------

認識画像ファイルをダウンロードして解凍し、
画像フォルダ格納場所 (例: C:\MJ_SEGA\ )に置いた後、
MJログイン.uwsとIDPASS.uwsを作成。同じフォルダに入れる
IDPASS.uwsをUWSCにて実行させる。

その時、MJアプリは、一番最初のログイン画面か ID入力画面に
なっている事。
ID入力画面の場合、SEGA-IDまたは MJM-IDのどちらになっていても可能