ウディタ 個人用メモ 中級者からのウディタ操作

ゲーム開発
変数呼び出し値
セルフ変数/コモンセルフ変数その他変数座標データベース
1000000+10*Y+X
→ マップイベントYのセルフ変数X
1100000+X
→ このマップイベントのセルフ変数Xコモンセルフ変数と間違えやすいので注意!
15000000+100*Y+X

→ コモンEv Y のコモンセルフ変数X (X:0-4,10-99通常変数, 5-9文字列)
1600000+X
→ このコモンEvのコモンセルフ変数Xマップセルフ変数と間違えやすいので注意!
2000000+X
→ 通常変数X
2000000+100000*Y+X
→ 予備変数YX番(例:2100003=予備変数1の3番)
3000000+X
→ 文字列変数 X
8000000+X
→ 0からXまでの値をランダムに返す。
9000000+X
→ システム変数 X
9100000+10*Y+X
→ イベントYの座標を取得or入力(※1
(X = 0:マップX座標(通常[1マスを1と換算]) 1:マップY座標(通常)
2:マップX座標(精密[0.5マスを1換算])  3:マップY座標(精密)
4:イベントの高さ(ピクセル数)       5:イベントの影番号
6:イベントの方向(1-9)            9:イベントのキャラチップ画像[文字列] )

9180000+10*Y+X
→ 主人公・仲間の座標などを取得or入力。Xの指定内容は(※1)と同じ。

9190000+X
→ このイベントの座標などを取得or入力。Xの指定方法は(※1)と同じ。

※「座標」の変数呼び出し値に代入すると設定された移動速度でキャラが移動します。
「座標」と「イベントの方向」と合わせて数値を変化させることで、
【変数操作】だけでキャラの移動や向き変更を行わせることができます

9900000+X
→ システム文字列X番

1000000000 (10AABBBBCC)
→ ユーザデータベース タイプA/データB/項目C

1100000000 (11AABBBBCC)
→ 可変データベース タイプA/データB/項目C

1300000000 (13AABBBBCC)
→ システムデータベース タイプA/データB/項目C

特殊文字
数値・文字列代入文字の性質変化文字表示の制御
\v[XXX] :XXX番の通常変数の値に置き換えます。
\v?[XXX] 予備変数?のXXX番の変数の値に置き換えます。(例:\v1[30])
\s[XXX] :XXX番の文字列変数の値に置き換えます。
\self[X] (※Xは0~9までの数値):
このマップイベントのセルフ変数X番の値に置き換えます。
\cself[XX] (※XXは0~99までの数値):
このコモンイベントのセルフ変数X番の値を表示します
(X=0~4、10~99なら数値、X=5~9なら文字列を返す)
\udb[A:B:C] (※A~Cは数値):
ユーザDBの「タイプA番・データB番・項目C番」の内容に置き換えます。
\cdb[A:B:C] (※A~Cは数値):
可変DBの「タイプA番・データB番・項目C番」の内容に置き換えます。
\sdb[A:B:C] (※A~Cは数値):
システムDBの「タイプA番・データB番・項目C番」の内容に置き換えます。
\sys[XXX] : XXX番のシステム変数の値に置き換えます。
\sysS[XXX] : XXX番のシステム文字列の値に置き換えます。(2009/01/13追加)
※代入特殊文字には優先順位があり、それに従えば入れ子構造にすることも可能です。
特殊文字の優先順位は、
  通常変数\v < 予備変数\v? < セルフ変数\self < コモンセルフ\cself < システム変数\sys <
ユーザDB \udb < 可変DB\cdb < システムDB \sdb < 文字列変数\s < システム文字列\sysS
 の順になっており、各特殊文字の[ ]内には、それより順位の低い特殊文字を記述することができます。
たとえば、\cself[\v[12]] (\v<\cself)なら、\v[12]番のコモンセルフを正常に呼び出すことができます。
しかし、逆の\v[\cself[2]]は、\vより\cselfの方が順位が高いので、正常に処理されません。※優先順位の都合上、DB読み込み用特殊文字に関しては、変数読み込み文字を使って
\udb[3:\v[4]:\self[1]] 」という風に入れても機能します。
ただし、\udb[\cdb[1:1:1]:2:3](※\udb<\cdbなのにcdbが内側に入っている)という具合に、
DB読み込み用文字の内部に優先順位の高いDB読み込み用文字を入れると
動作が不安定になります
ので注意してください。
\f[XX] :フォントサイズを変更します
\m[XX] :その行の最大フォントサイズを指定します、行頭に入れて下さい。
文字のタテ位置がガタガタになるときに使ってください。
\c[XX] :フォントカラーを変更します、色はシステムDBタイプ12から読み込まれます。
\E : 以降の文字列をフチ(=エッジ,E)付きにします
\N : 以降の文字列をフチ無し(=ノーマル,N)にします(※こちらがデフォルト状態)
\-[XX] :XXピクセル分、以降の文字幅を詰めます。
XXにマイナスの値を入れると文字が広がります。
\font[X] :フォントをサブフォントXに変更します。\font[0]で基本フォントに戻せます。
\A+ … 以後の文字にアンチエイリアスを付与します。文字がなめらかに見えます。
\A- … 以後の文字からアンチエイリアスを解除します。
\\ … 半角の\に変換されます。
\! … 次のキー入力まで文章表示を停止。
\. … 0.25秒ウェイト。
\^ … キー入力を待たずに文章表示を終了する。
\> … 次以降の文章を瞬間表示する
\< … \>による瞬間表示を中断する
\mx[??] (※??は数値)… 次に表示する文字のX座標を、??ピクセルだけずらします。改行で解除されます。
\my[??] (※??は数値)… 次に表示する文字のY座標を、??ピクセルだけずらします。
\ax[??] (※??は数値)… 次に表示する文字のX座標を、強制的に??ピクセルにします。改行で解除されます。
\ay[??] (※??は数値)… 次に表示する文字のY座標を、強制的に??ピクセルにします。
同じ文字を重ねたい場合など、「■\ax[0]\ay[0]◆」と入力することで、
二つの文字を重ねることができます。
\sp[??] (※??は数値)… 以降の文字速度を秒間??文字に変更する
\space[??] (※??は数値)… 以降の改行間隔を??ピクセルに変更します
\r[文字,ルビ内容] … 「文字」に「ルビ内容」のルビを付けて表示する。
ルビの文字色はシステムDBタイプ12(文字色)のデータ13番目の色を使用。
\i[番号] (※番号は0~999までの数値) … Data内のBasicDataフォルダにある
「icon番号.png」の画像を文章中に表示することができます。アイテム名の先頭に
アイコンを付けたり、文章中に特殊な記号を入れたいときに使えます(Ver1.03で実装)。
※ファイル名には、「icon002.png」のようにiconに続けて3桁の数値を入れてください。
※iconファイルをBasicDataに入れてない場合は何も出ません。\img[ファイル名] (「ファイル名」はData以下のアドレスを記述) …
Data内にある「ファイル名」の画像を文章中に表示することができます。
\img[ピクチャ\Test1.png]という具合に指定します(読み込まれるのはData\ピクチャ\Test1.png)。
表示時の仕様は上記のアイコン\i[ ]と同じですが、アイコンより少し処理が重い可能性があります。
※ファイルがない場合はエラーメッセージが出るので注意してください。
<L> … 以降の文字列を左寄せ(※デフォルト)に表示します。
<C> … 以降の文字列を中央寄せに表示します。
<R> … 以降の文字列を右寄せに表示します。

システム変数/文字列

78-82番:現在の年月日84番:画面サイズ110番:乱数116-117番:Ver2.20以降 解像度
77番:現在の[年]

78番:現在の[月]

79番:現在の[日]

80番:現在の[時]

81番:現在の[分]

82番:現在の[秒]

読み取り専用変数です、現在の年月日、および時刻を取得します。セーブデータなどに記述したり、リアルタイムの時間に応じたイベントを発生させるときなどに使えるでしょう。

84番:画面サイズ(0=320×240, 1=640×480, 2=800×600)
読み取り専用変数です。これは現在のゲームの画面サイズを取得するものですが、旧バージョンとの互換性を得るため、得られるのは記載されている3つの解像度「320×240、640×480、800×600」のみに限られます。これ以外の画面サイズの場合、「-1」を返します。Ver2.20以降では使用を推奨しません。
代わりに、「Sys116:[読]画面サイズX」「Sys117:[読]画面サイズY」をご利用ください。
110番:乱数のシード(種)
このシードを同じ値に設定すると、次からの乱数値がいつも同じ並び順になります。
STGのリプレイ機能時や、自動戦闘の演出で、乱数を固定したい場合などに使用できます。
116番:[読]画面サイズX [Ver2.20で実装] 読み取り専用です、「ゲームの基本設定」で設定したゲーム画面サイズの横サイズを得ることができます。
117番:[読]画面サイズY [Ver2.20で実装] 読み取り専用です、「ゲームの基本設定」で設定したゲーム画面サイズの縦サイズを得ることができます。

 

コメント

タイトルとURLをコピーしました