[SSP技術資料]

オーナードローメニュー

※SSP独自仕様・MATERIAでUndocumentedな仕様のみ


メニュー定義のオーバーライド

descript.txtに書かれたメニュー定義はゴースト側に書いてもシェル側に書いても構いません。
また、ゴースト側の定義をシェル側がオーバーライドしますので「特定のシェルだけオーバーライド可」という手法も可能です。

また、メニュー背景・前景用のPNGファイルは、シェルディレクトリ->ゴーストディレクトリの順で探索されます。


SHIORI/2.5によるメニュー制御

descript.txtによる定義がなかった場合、もしくは読み込みに失敗した場合、descript.txtに書かれるものと同じ識別子を用いてSHIORI/2.5のリクエストが行われます。
右クリックするたびにリクエストされますので、できるだけこの関係のリクエストは、複雑なロジックを用いずすばやく処理することをおすすめします。

また、SHIORI/2.5による方法は、メニュー画像のファイル名が変わる(=menu.background.bitmap.filename等の応答文字列が変わる)たびにファイルを読み込みますので、非常にコストの高い方法です。サイドバーだけをランダムで変えたい場合は後述のマルチサイドバー仕様を利用すると動作が軽くなります。


マルチサイドバー(MATERIAでは廃止)

menu.sidebar.bitmap.filenameに例えば menu_sidebar.png と指定した場合、menu_sidebar*.png(*はワイルドカード)に該当するファイルがすべて読み込まれ、ランダムに表示されます。数の制限はありません。

これはサイドバーのみの仕様です。また、前述のSHIORI/2.5による方法では単純に指定されたファイルのみを読み込みます。


定義のない場合

ゴースト/SHIORIともにまったく定義のない場合はSSPのデフォルト設定が使われます。
デフォルト設定値はdataフォルダ以下にあるファイルで定義されています。