prefix | name | explain |
---|---|---|
$ | Set / 値書き換え |
属性の値を書き換えます。 $target.property newvalue (「target.」が自身の場合は省略。) |
% | Get / 値呼び出し |
属性の値を呼び出します。 %target.property (「target.」が自身の場合は省略。) 単体で実行しても意味がありません。 |
& | Exec / メソッド呼び出し |
指定された属性を命令文の集合として実行します。 |
[ | ShiaMessage (ShiaCall) |
ShiaMessageを発行します。 ShiaControllerに渡され、適当な値が返却されます。 |
@ | SystemCall |
システムコールを発行します。 SOScriptEngineで処理され、適当な値が返却されます。 |
{ | 条件分岐 |
条件分岐フラグを設定します。 妄想中。 |
} | 条件実行 |
条件分岐フラグにより、続く命令の実行を決めます。 妄想中。 |
example | explain |
---|---|
$fraction 0.5; | 自身の透過度を0.5にします。 |
$target.visible YES; | targetを可視状態にします。 |
$fraction %target.fraction | 自身の透過度をtargetと同値にします。 |
&self.onrun | 自身のonrun属性をSOScriptとして実行します |
@runshiacall [shia.music.op.play; | shia.musicへShiaMessageを発行し、 opというBGMを再生します。 |
word | explain |
---|---|
NO | 偽を示します |
false | 偽を示します |
真偽判定は、偽であるかどうかで行います。 そのため、YES/trueは予約語として定義されません。 | |
SysCall | Args | explain | |
---|---|---|---|
example | |||
runShiaCall | ShiaMessage | ShiaMessageを発行します | |
@runshiacall [shia.obj.method key:val; | |||
runSceAsReplace | SceFilePath | シナリオを実行させます。 | |
@runsceasreplace scenario.shia; | |||
runSceAsChild | SceFilePath | ||
@runsceaschild scenario.shia; | |||
quitSO | - | 全てのScreenを破棄し、OrderQueを空にします。 | |
@quitso; | |||
exec | - | シナリオを実行させます。 | |
@exec; | |||
quitApp | - | 実行環境を終了します。 | |
@quitapp; | |||
runSO | SOfile | SOfileからScreenを作成し、スタックに積む | |
runSOAsChild | SOfile | SOfileからScreenを作成し、スタックに積む | |
runSOAsReplace | SOfile | SOfileからScreenを生成し、現在のものと置き換える | |
closeSO | カレントのスクリーンを破棄する | ||
beep | - | 警告音を鳴らす | |
@beep | |||
focus | target | targetにフォーカスを移す | |
@forcus btn1 | |||
forgroup | group, order | groupに含まれる全てのオブジェクトを対象にorderを実行する。 | |
@forgroup first $visible yes | |||
log | string | 標準出力にログを吐きます。 | |
@log This is log message. | |||
OrderQueue | |||
SOScriptのorderをQueue構造で保持します。 | |||
loadOrder | OrderFilePath | orderを読み込み、OrderQueueの末尾に追加します。 | |
addOrder | order | OrderQueueの末尾にorderを追加します。 | |
removeOrder | - | OrderQueueの先頭からorderを削除します。 | |
clearOrder | - | OrderQueueをクリアします。 | |
logOrder | OrderQueue内のorderを出力します。 | ||
ArteMisya Expansion | |||
ArteMisyaではShiaSceの代わりにSOScriptを羅列したものをシナリオとして利用しました。 シナリオとして読み込まれたSOScriptはキューに保持され、execコマンドで実行されます。 | |||
noticeMsg | ArteMessageNo | ArteMisya Exp. | |
loadsce | OrderFilePath | loadsceと同等。廃止予定。 | |
clearsce | - | clearsceと同等。廃止予定。 | |
logsce | logsceと同等。廃止予定。 | ||