■メニュー ▲ menu abc |
| 書式 |
menu 変数名
選択肢1
選択肢2
・
・
・
endmenu(またはend)
|
|
メニューを表示し、選択されるまで待つ。選択された行番号が任意の変数にセットされる。※0から順
|
| 例 |
menu kekkaMenuBtl
こうげき
じゅもん
どうぐ
ぼうぎょ
endmenu
|
|
メニューを表示し、選択された内容により上から0,1,2,3のどれかがkekkaMenuBtlにセットされる。
|
|
<補足>選択肢を$で囲んで変数も使用可能。
|
| 例 |
basho0 = "謎の塔"
basho1 = "遥かな海"
menu idousaki
$basho0$
$basho1$
戻る
endmenu
|
|
<補足>配列変数と要素数を指定可能。
|
| 例 |
basho = "謎の塔", "遥かな海", "遠い空", "今は行けない"
menu idousaki basho 3
戻る
endmenu
|
|
<補足>間を空けて2つの文字列を記述すると左右に表示。
|
| 例 |
menu noKekka
薬草 30G
こんぼう 50G
endmenu
|
|
<補足>上記配列変数を2つ指定して、左右に表示。
|
| 例 |
aryNm = "薬草" "こんぼう" "木のぼうし"
aryPrice = 30 50 110
menu noKekka aryNm 3 aryPrice 3
戻る ""
endmenu
|
|
<補足>mposコマンドをmenuコマンド内に書くと、表示座標と横幅を指定可能。
※横幅はグリッドのほぼ2倍です
|
| 例 |
menu noShop
mpos 30 50 100
卸問屋べにまる
卸問屋スターダスト
卸問屋X
やめる
endmenu
|
|
メニューをX座標30、Y座標50の位置に横幅100で表示する。
|
|
<特殊な使い方>
mrowコマンドをmenuコマンド内に書くと、1ページの行数指定可能。(最下行固定)
|
| 例 |
menu aaa
mrow 5
最大HP
最大MP
攻撃力
防御力
素早さ
魔力
魔法防御
戻る
endmenu
|
|
4行目の防御力までと「戻る」が表示され、スクロールバーが右横に出る。
|
|
mrowコマンドの第2引数で最下固定行数を指定できるようになりました。(Ver.0.33以降)
※省略時は従来どおり1行固定
|
| 例 |
menu aaa
mrow 5 2
スライム
?????
コケコリス
?????
ミノタンロース
?????
次へ
戻る
endmenu
|
|
mrowコマンドの第3引数で初期表示最上行番号を指定できるようになりました。(Ver.0.33以降)
※変数指定可能
関連コマンド:getMenuIx
|
| 例 |
row0 = 0
*lblLoop
menu aaa
mrow 5 1 row0
スライム
?????
コケコリス
?????
ミノタンロース
?????
終了
endmenu
aaa=$aaa$
getMenuIx row0
if aaa < 6 goto lblLoop
|
■メニュー表示最上行番号取得 ▲ menu abc |
| 書式 |
getMenuIx 変数名
|
|
menuコマンド終了時に最上行に表示されていた番号を取得する。
通常menuコマンドのmrowと組み合わせて使用する
|
| 例 |
mrowコマンドの第3引数参照
|
■クリッカブルマップ ▲ menu abc |
| 書式 |
clickmap 変数名 配列数 X座標配列 Y座標配列 横幅配列 縦長配列
endclickmap
|
|
配列で指定した範囲のどれかがクリックされるまで待つ。クリックした配列番号が変数にセットされる。
※配列数は数値、変数のいずれも指定可能
※clickmapとendclickmapの間には何も記述できない(将来の機能拡張用)
|
| 例 |
town1_x = 150 -175 0
town1_y = 150 -100 -100
town1_w = 150 100 200
town1_h = 100 100 100
clickmap m0 3 town1_x town1_y town1_w town1_h
endclickmap
m0=$m0$
|
|
参考スクリプト:clickmap.txt
|
■マウスオーバーイベント ▲ menu abc |
| 書式 |
*onMoveMenu
処理ブロック
return
|
|
menuまたはclickmapコマンドで、項目の範囲にマウスオーバーすると自動的に呼ばれる。
※処理ブロックに、text、menu、clickmap、wait、各load等、待ちの発生するコマンドを書くと動作がおかしくなる
|
| 例 |
ommMode = 1
menu m0
aa
bb
cc
endmenu
ommMode = 0
end
*onMoveMenu
if ommMode = 1 then
msg
m0=$m0$
.
endif
return
*onOutMenu
clear
return
|
|
参考スクリプト:clickmap.txt
|
■マウスアウトイベント ▲ menu abc |
| 書式 |
*onOutMenu
処理ブロック
return
|
|
menuまたはclickmapコマンドで、項目の範囲にマウスオーバーした後、マウスアウトすると自動的に呼ばれる。
※処理ブロックに、text、menu、clickmap、wait、各load等、待ちの発生するコマンドを書くと動作がおかしくなる
|
| 例 |
上記「マウスオーバーイベント」の例参照
|
|
参考スクリプト:clickmap.txt
|