■ スクリプト 命令リファレンス ――――――――――――――――――――――――――――――――――――― □ 命令群 ・命令は大きく分けて二種類に分類されます。 一つは主にスキンの画面描画に使われる「スキン関連命令」 もう一つはプレイヤーの再生機能等を利用する「プラグイン関連命令」 です。 スキン関連、プラグイン関連と分類されていますが、殆どの命令がどちら からでも実行できます。もちろん(*.xs)ファイルからも両方実行できます。 □ 命令の詳細 ・スキン関連命令 外観を操作する命令群です。 pos=[x]*[y] メイン画面左上から横に [x] px 縦に [y] px 行った所を文字や画像表示の開始点にします。 col=[r]*[g]*[b] 描画色を指定した色に変えます。それぞれ赤、緑、青がどれだけ強いかを示し、0-255 の値で指定します。255*255*255 が白で、0*0*0 が黒となります。 imgload=[file.bmp] [file.bmp] を読み込み、使用可能な状態にします。一度に一つの画像ファイルしか読み込めない点に注意して下さい。imgload を二回使用すると、一回目に読み込んだ画像の上に二回目に読み込んだ画像が上書きされます。実際に画像を表示するには imgdraw を使用します。 imgmode=[mode] 画像を画面に表示する際のモードを指定します。通常は0で、黒(RGB=000)を抜き色として表示しない場合のみ2と指定します。 imgdraw=[x]*[y]*[width]*[height] imgload で読み込んだ画像ファイルを pos で指定した位置に表示します。画像ファイルの左上から [x] px [y] px を基点として [width] px [height] px がコピーされます。 mesfont=[font]*[size] mes で表示する文字のフォント [font] とサイズ [size] pt を指定します。 mes=[message]*[align] [message] を pos で指定した位置に、col で指定した色で表示します。[align] は指定しなくても構いませんが、"right" とすると pos で指定した位置が文字列右端になるように(右揃え)、"center" とすると中央になるように(中央揃え)表示します。 mes=[message]*box*[width] NEW!! v.402.02〜 [message] を pos で指定した位置に、col で指定した色で、[width] px で自動改行しながら表示します。 messcrl pos で指定した位置を基点として、時間経過とともに段々と表示開始位置が左にずれていく音楽情報文字列を表示します。簡単に言えばあのスクロールする奴を表示するわけです。 drwboxf=[x]*[y]*[end-x]*[end-y] 画面左上から横に [x] px 縦に [y] px を基点、 [end-x] px [end-y] px を終点として、 col で指定した色の塗りつぶし四角形を表示します。 drwline=[x]*[y]*[end-x]*[end-y] 画面左上から横に [x] px 縦に [y] px を始点、 [end-x] px [end-y] px を終点として、 col で指定した色の直線を表示します。 drwboxs スキンのヘッダで指定した領域にシークバーを表示します。クリックすると再生位置が変わる奴です。詳細は readme_skin.txt をご覧下さい。 winsize=[width]*[height] メイン画面のサイズを幅 [width] px 高さ [height] px に変更します。 winwidt=[width] メイン画面の幅を [width] px に変更します。 winheig=[height] メイン画面の高さを [height] px に変更します。 winposi=[x]*[y] メイン画面を、デスクトップ左上から横に [x] px 縦に [y] px の所に画面左上端が来るように移動します。 winregi col で指定した色を抜き色として、メイン画面を表示内容で切り抜きます。例えば、キャラ画像を読み込んで表示させた後、その背景色を col で指定して regmake することにより、画面をキャラの形にすることが可能です。ファリス★スキンでその手法が使われています。 objsize=[width]*[height] objxset で設置するオブジェクト(ボタンやチェックボックス、リスト等)の大きさを幅 [width] px 高さ [height] px に指定します。 objxset=[obj-type]*[text] NEW!! オブジェクトを objsize で指定したサイズで pos で指定した位置に設置します。[text] はボタン表面またはチェックボックス横に表示されます。 ※ [obj-type] の詳細 ―――――――――――――――――――――――――――――――― obj-type 機能 ―――――――――――――――――――――――――――――――― mainlist (*1) リスト maincomlist (*1) リスト(コンボボックス) addfolderchk サブフォルダ検索オプション用チェックボックス listwindow リスト画面を開く closelistwindow リスト画面を閉じる listarea リスト領域を開く(メイン画面サイズを変更する) infowindow 情報画面を開く movewindow (*2) メイン画面を移動する minimize メイン画面を最小化する showproperty 再生中ファイルのプロパティを開く NEW!! v.402.02〜 cfgvolume 音量変更画面を開く favorite お気に入りメニューを表示する savefavr 現在のリストをお気に入りとして保存する exit プレイヤーを終了する play 選択中のファイルを再生する prev 再生中のファイルの一つ前を再生する next 〃 一つ後 〃 pause 再生を一時停止/再開する stop 再生を停止する mode 再生モードを変更する addfile ファイルをリストに追加する addfolder フォルダをリストに追加する clearfile 選択中のファイルをリストから削除する clearlist 再生リストを削除する delete 選択中のファイルをごみ箱に入れる rename 選択中のファイルの名前を変える checklist 再生リスト中ファイルの存在確認をする sortlist 再生リストをファイル名順に並び替える moveup 選択中のファイルを再生リスト中で一つ上に移動する movedown 〃 一つ下 〃 savelist 再生リストをファイルとして保存する loadlist ファイルから再生リストを追加読み込みする (以降、スキンのユーザー定義エリアのスクリプトを実行するボタン [定義されていなければ実行されません] NEW!! v.402.02〜) userdef1 スキンの *UserDef1 エリアの内容を実行 userdef2 スキンの *UserDef2 エリアの内容を実行 userdef3 スキンの *UserDef3 エリアの内容を実行 userdef4 スキンの *UserDef4 エリアの内容を実行 userdef5 スキンの *UserDef5 エリアの内容を実行 ―――――――――――――――――――――――――――――――― (*1) リストは合計一つしか設置できません (*2) ボタンを押した後メイン画面のオブジェクトが無い部分をドラッ グすると画面を動かせる機能ですが、あまり使えません(ぉぃ ―――――――――――――――――――――――――――――――― objstyl=[obj-id]*[obj-style] 設置したオブジェクトのスタイルを変更します。オブジェクトは設置した順に 0-63 までの [obj-id] を持っているので、例えば五番目に設置したオブジェクトのスタイルを変更したい場合は 4 を指定します。[obj-id] の所を %o.[obj-type]% または Obj.[obj-type] とすると、指定された [obj-type] の中で一番最初に設置されたオブジェクトのスタイルが変更されます。 ※ [obj-style] の詳細 ―――――――――――――――――――――――――――――――― obj-style 機能 ―――――――――――――――――――――――――――――――― 0 オブジェクト有効に設定 1 オブジェクト無効に設定 2 オブジェクト不可視に設定 3 オブジェクト可視に設定 5 透明化ボタンに設定 6 ボタンの枠を強調表示にする 7 ボタンのテキストを左詰表示にする 8 ボタンのテキストを右詰表示にする 9 ボタンのテキストを中央表示にする 10 ボタンのテキストを上位置表示にする 11 ボタンのテキストを下位置表示にする 13 ボタンをフラットスタイルにする 14 ボタンをフラットスタイル枠強調にする 15 ボタンをフラットスタイルトグル動作にする 16 ボタンをトグル動作にする 19 チェックボックスの左側にテキストを配置(右詰中央)する 20 チェックボックスの左側にテキストを配置(右詰上)する 21 チェックボックスの左側にテキストを配置(右詰下)する ―――――――――――――――――――――――――――――――― [obj-style] 番号 4,12,17,18 は利用できません。 機能番号の 0〜 4は、すべてのオブジェクトに対して有効です。 機能番号の 5〜18は、ボタンオブジェクトに対して有効です。 機能番号の19〜21は、チェックボックスオブジェクトに対して有効です。 objstyl 命令は HSP で利用できる Srexhsp.dll の btnable 命令と互 換性があり、この欄の説明はその説明から引用させて頂いています。 ―――――――――――――――――――――――――――――――― objpimg=[obj-id]*[x]*[y]*[width]*[height] 設置したオブジェクトに画像を貼り付けます。メイン画面の左上から [x] px [y] px を基点として [width] px [height] px が貼り付けられます。 ・プラグイン関連命令 プレイヤーの機能を利用する命令です。 fncbttn=[command] NEW!! v.402.02〜 プレイヤーにボタンを押した際の動作をさせますが、この命令以降のスクリプトが実行されなくなります。 スキン内ではユーザー定義エリア(*UserDef[1-5])を除いて使用できません。(プラグイン、またはファイルからの利用は可能です) ※ [command] の詳細 ―――――――――――――――――――――――――――――――― command 機能(ボタン) ―――――――――――――――――――――――――――――――― (ウィンドウ関連) 0 リスト画面を開く 1 リスト画面を閉じる 2 リスト領域を表示する 3 情報ウィンドウを開く 4 メイン画面を移動する 5 メイン画面を最小化する 31 再生中ファイルのプロパティを開く NEW!! v.402.02〜 6 音量調整画面を開く (メニュー) 7 お気に入りメニューを表示する (音楽再生) 8 選択中ファイルを再生 9 一つ前 10 一つ後 11 一時停止/再開 12 停止 (リスト編集) 16 再生モード変更 17 ファイル追加 18 フォルダ追加 19 選択中のファイルを削除 20 リスト全削除 21 選択中のファイルをごみ箱にポイ 22 選択中のファイル名を変更 23 リスト中全ファイルの存在を確認 24 名前順並び替え 25 ファイルを一つ上に移動 26 ファイルを一つ下に移動 27 リストをファイルに保存 28 リストをファイルから追加読み込み (設定読み込みと保存) 29 リストをお気に入りとして保存 30 プレイヤーを終了 (スキンのユーザー定義エリアのスクリプトを実行 [定義されていなければ実行されません]) NEW!! v.402.02〜 33 スキンの *UserDef1 エリアの内容を実行 34 スキンの *UserDef2 エリアの内容を実行 35 スキンの *UserDef3 エリアの内容を実行 36 スキンの *UserDef4 エリアの内容を実行 37 スキンの *UserDef5 エリアの内容を実行 ―――――――――――――――――――――――――――――――― fncmenu=[command] NEW!! v.402.02〜 プレイヤーに右クリックメニューをクリックした際の動作をさせますが、この命令以降のスクリプトが実行されなくなります。 スキン内ではユーザー定義エリア(*UserDef[1-5])を除いて使用できません。(プラグイン、またはファイルからの利用は可能です) ※ [command] の詳細 ―――――――――――――――――――――――――――――――― command 機能(右クリックメニュー) ―――――――――――――――――――――――――――――――― 301 スキン設定ファイルを読み込む 300 スキン設定をファイルに保存 152 スクリプトを読み込む 151 ファイルリストを更新 150 ファイル検索で、再生可能な全ての種類のファイルを検出する設定にする 109 フォルダ内ファイル検索中に見つかったリストファイルの中身を自動読み込みする/しないの切り替え 108 フォルダ内ファイル検索でサブフォルダ内のファイルも検索する/しないの切り替え 107 リストへの追加時、既存のファイルは最下行に移動する/しないの切り替え 106 チップヘルプを表示する/しないの切り替え 105 メイン画面を常に最前面に表示する/しないの切り替え 104 時間表示を HH:MM:SS 形式にする/しないの切り替え 103 vox.dll を利用する/しないの切り替え 102 vbmp3.dll を利用する/しないの切り替え 110 mp3infp.dll を利用する/しないの切り替え NEW!! v.402.02〜 101 再生リストを繰り返し再生する/しないの切り替え 100 MCIで再生可能なファイル種を設定する 600 再生モードを変える (+0:NOR/+1:REV/+2:RND/+3:REP/+4:STP/+5:MDR) 650 音楽情報をクリップボードにコピー (+0:ファイルのフルパス/+1:ファイル名/+2:著作者/+3:タイトル/+4:アルバムタイトル/+5:リリース/+6:コメント/+7:フォーマット) ―――――――――――――――――――――――――――――――― setmcic=[command] MCIコマンドを実行します。再生中の音楽への操作を実行する場合、エイリアスは %p.alias% として下さい。 setmcia=[alias] 次回以降プレイヤーから実行されるMCI命令のエイリアスを [alias] に変更します。 setmode=[mode] [mode] は 0-5 で指定してください。 ※ [mode] の詳細 ―――――――――――――――――――――――――――――――― mode 再生方法 ―――――――――――――――――――――――――――――――― 0 (NOR)通常再生 1 (REV)逆順再生 2 (RND)ランダム再生 3 (REP)リピート再生 4 (STP)一曲で停止 5 (MDR)曲間空白再生 ―――――――――――――――――――――――――――――――― setmenu=popup 現在マウスカーソルのある位置にプレイヤーのメニューを表示します。 set.xsp=[skin.xsp] [skin.xsp] には s フォルダ内にあるスキンのファイル名を入れて下さい。 set.xss=[c:\data\skinsetting.xss] NEW!! v.402.02〜 [c:\data\skinsetting.xss] にはスキン設定ファイルのフルパスを入れてください。指定された設定でスキンが再読み込みされます。設定ファイルが現在のスキン用でなかった場合はエラーを表示します。 set.xs_=[c:\data\script.xs] NEW!! v.402.02〜 [c:\data\script.xs] にはスキン設定ファイルスクリプトのフルパスを入れてください。この命令の次の行に指定されたスクリプトが挿入されます。 set.xms=[language.xms] [language.xms] には s フォルダ内にある言語ファイル名を入れて下さい。 set.xpi=[mode]*[option] プラグインを起動する場合は [mode] に start [option] に e フォルダ内にあるプラグインのファイル名を入れて下さい。登録を解除する場合は [mode] に exit [option] にプラグインIDを入れますが、プラグイン作成用モジュールの plugin_exit 命令で代用できるので使用する必要はありません。 setplay=stop 音楽の再生を停止します。 setplay=pause/resume 再生を一時停止、再開します。 setplay=play*[type]*[option] [type] を file とした場合は [option] に再生させたい音楽ファイル名を、index とした場合には [option] に再生させたいファイルの再生リスト中でのインデックス(一番上を0とした時の通し番号)を入れて下さい。 setxwin=title*[wait]*[title] メイン画面のタイトルを [title] に変更します。[wait] に 0 を入れるとタイトルはそのまま不変ですが、他の数値を指定するとその時間が経過した後、標準タイトル "再生中のファイル名 : arXmp v.…" に戻ります。 setxwin=[mode] [mode] を minimize とするとメイン画面を最小化し、restore で最小化から復帰、minimize_lock とすると最小化の後ユーザー操作による復帰を許可しない状態にします。その状態にした後は必ず minimize_release で解除します。 setlist=add*[add-path]*[add-fileopt]*[add-searchopt]*[add-expandopt] [add-path] で指定されたファイルをリストに追加します。ファイル種がリストファイルの場合はその内容を読み込み、プラグインの場合はプラグイン側の plugin_commandopt 命令で指定された内容を読み込みます。[add-***opt] では再生リストへのファイルの追加法を指定します。 ※ [add-***opt] の詳細 ―――――――――――――――――――――――――――――――― *** 値 設定内容 ―――――――――――――――――――――――――――――――― file 1/0 重複ファイルを最下行へ移動する(1)かしない(0)か search +1(MP3) +2(WMA) +4(Midi) +8(WAVE) +16(OGG) で値を指定します。CDAファイル及びユーザーがMCIで再生すると指定したファイルは無条件で読み込まれます。 expand 1/0 検索したファイル中にリストファイルがあったら、更にそれを読み込むか(1)読み込まない(0)か ―――――――――――――――――――――――――――――――― いずれも値を -1 とするとプレイヤーの指定に従います。 ―――――――――――――――――――――――――――――――― setlist=addf*[add-path]*[add-fileopt]*[add-searchopt]*[add-expandopt] [add-path] で指定されたフォルダ内のファイルをリストに追加します。 setlist=addfr*[add-path]*[add-fileopt]*[add-searchopt]*[add-expandopt] [add-path] で指定されたフォルダ内のファイルをサブフォルダも含めて検索し、リストに追加します。 getlist=[file-path] NEW!! v.402.02〜 get.xsp=[file-path] NEW!! v.402.02〜 [file-path] で指定されたファイルに現在の再生リストの内容(list)またはスキン情報(.xsp)を保存します。 [file-path] が省略されたり、*.xpi *.exe というファイル名だった場合、その名前で登録されているプラグインに情報を送ります。 get.xpi=list*[file-path] NEW!! v.402.02〜 [file-path] で指定されたファイルに現在起動しているプラグインのリストを保存します。 [file-path] が省略されたり、*.xpi *.exe というファイル名だった場合、その名前で登録されているプラグインに情報を送ります。 get.xpi=[plugin.xpi]*[file-path] NEW!! v.402.02〜 [file-path] で指定されたファイルに、現在起動している [plugin.xpi] というファイル名のプラグインの情報を保存します。 [file-path] が省略されたり、*.xpi *.exe というファイル名だった場合、その名前で登録されているプラグインに情報を送ります。 ――――――――――――――――――――――――――――――――――――― (c) arc@arcis 2002-2003