「マップ定義案 (めずもな)」の編集履歴(バックアップ)一覧はこちら

マップ定義案 (めずもな)」(2008/09/19 (金) 20:08:53) の最新版変更点

追加された行は緑色になります。

削除された行は赤色になります。

(ほとんど)XMLっぽい構文で定義します。 <?xml version="1.0" encoding="UTF-8"?> <!-- ルートノード type属性で何を定義しているかを判断します。 "stage"に設定した場合はステージ定義になります。 ステージのベースMCや座標定義、エフェクトの設定をします。 --> <root type="stage"> <!-- ヘッダー --> <information> <!-- ステージ名を指定します。 lang属性で言語を指定します。 lang属性に指定できる文字列は以下の通りです。 +――+―――――+ |lang|定義内容 | +――+―――――+ |jp |日本語 | |en |英語 | |id |ステージID| +――+―――――+ ステージIDはステージを指定するときに使用します。 IDが無かったりIDが被ったりするとバグ発生。 --> <title lang="jp">テストルーム</title> <title lang="en">Test Room</title> <title lang="id">test_room</title> <!-- リンゲージ名で共通する部分を指定します。 最後の"."は抜いてください。 --> <package name="com.gmail.aal.gpp.stage" /> <!-- nameで定義先、contentで定義内容を書きます。 name属性で指定できる物は以下の通りです。 +―――――+――――――――-+――――――――――――――――――――――-+ |name |content |内容 | +―――――+――――――――-+――――――――――――――――――――――-+ |areaID |エリアIDのみ |このステージがどのエリアかを指定 | |radio |ブール |ラジヲが使えるかどうか | |radionum |0~9 |ラジヲが幾つ使えるか(radio=true時のみ有効) | |video |ブール |ビデヲが使えるかどうか | |rulanable |ブール |ルーラ可能なステージかどうか | |walkSpeed |tardy/normal/fast|ルーラ可能なステージかどうか | |anonymous |ブール |名前を強制名無しにするかどうか | |topLayer |URL(未定義で無効)|上にswfを重ねる。相対はmain.swfが基準 | |stageMC |MCのリンゲージ |ステージ背景となるMCを指定します | |width |1以上の整数 |ステージのマス数(x座標) | |height |1以上の整数 |ステージのマス数(y座標) | |moveX |整数 |1マス移動したときのx座標移動量 | |moveY |整数 |1マス移動したときのy座標移動量 | |bgColor |整数 |背景色(省略でデフォルト色になります | |bgImg |整数 |背景画像 (相対パスはmain.swf基準。) | | | |""でデフォルト画像。省略で非表示にできます。)| |soundTheme|サウンドテーマID |初期設定でのサウンドテーマを設定します | +―――――+――――――――-+――――――――――――――――――――――-+ ただし、これ以外にも独自に設定することは可能ですが非推奨。 独自に設定したいものがある場合はvalue要素を使ってください。 --> <meta name="areaID" content="test" /> <meta name="radio" content="false" /> <meta name="radionum" content="0" /> <meta name="video" content="false" /> <meta name="rulanable" content="true" /> <meta name="walkSpeed" content="normal" /> <meta name="stageMC" content="TestRoom" /> <meta name="width" content="3" /> <meta name="height" content="3" /> <meta name="moveX" content="40" /> <meta name="moveY" content="20" /> <!-- 定義とは関係ないけど保持したいデータ。 <ステージID>.value.<id属性>で取得出来ます。 自分自身のvalueを見る場合は"<ステージID>."を省略します。 --> <value id="test" data="データが入ります。" /> <!-- 座標ID定義。 rulaや部屋移動などでこれを使います。指定する属性は以下の通りです。 +――-+―――――――――――――――――――+ |属性 |内容 | +――-+―――――――――――――――――――+ |id |座標ID。これを使って指定出来る | |x |x座標。整数値 | |y |y座標。整数値 | |dir |向いている方向(0:右, 1:下, 2:左, 3:上)| +――-+―――――――――――――――――――+ dir属性は特定の処理(rulaなど)以外は全方向対応。 座標IDを指定する場合は<ステージID>.<座標ID>で指定。 自分自信のpointを見る場合は"<ステージID>."を省略します。 --> <point id="rula" x="0" y="0" dir="0" /> <point id="gotoNextRoom" x="0" y="0" dir="0" /> <!-- テンプレートエフェクトです。 特定のタグで使えるimport属性を利用して読み込みます。 idには任意の名前を指定できますが、マジックIDというものが在ります。 マジックIDを指定すると、特殊な処理になります。 マジックIDは以下の通りです。 +―――――+―――――――――――――――――+ |マジックID|処理 | +―――――+―――――――――――――――――+ |default |全てのマスでの初期値を設定します。| +―――――+―――――――――――――――――+ 要素にエフェクト内容を書きます。詳細は下記。 --> <template id="default"> <!-- エフェクトタイミングの定義です。 type属性でタイミングを指定します。 type属性に指定できるタイミングは以下の通りです。 +――――+―――――――――――――――――+ |type属性|タイミング | +――――+―――――――――――――――――+ |enter |そのステージに入った瞬間 | |out |そのステージを出た瞬間 | |always |常時(24回/sec) | |stay |その座標に到着~出発直前(24回/sec)| |leave |その座標から動いた瞬間 | |come |その座標に着いた瞬間 | |moving |その座標を動いた直後~到着直前 | |talk |自分が話した瞬間 | |hear |ほかの人が話した瞬間 | |shift |ほかの人が動いた瞬間 | +――――+―――――――――――――――――+ また、上記以外のtype属性を指定しても使えます。 その場合はimportEffectを使用してください。(下記参照) 要素にエフェクト内容を書きます。 書き方は下記の通りです。 +――――――――――――――――――――――――――――――――――――――――― # 先頭に"#"をつけるとコメントです。 エフェクト名:内容 # 複数内容を指定する場合は" "を1つ間においてください。 # 2個以上同じエフェクトを置くことはできません(そのうち改善) エフェクト名:内容1 内容2 エフェクト名:内容1 内容2 内容3 +――――――――――――――――――――――――――――――――――――――――― 同じエフェクトがある場合は下に書いたほうが優先されます。 同じエフェクトで複数記述はできません。 (ただし、一部のエフェクトは" "で区切って記述すれば出来ます。) エフェクトは下記のテーブルを参照。 +―――――――+―――――――+――――――――――――――――――――――――――+ |エフェクト名 |許可データ |意味 | +―――――――+―――――――+――――――――――――――――――――――――――+ |blockUP |ブール |上にいけないようにするかどうか | |blockDown |ブール |下にいけないようにするかどうか | |blockRight |ブール |右にいけないようにするかどうか | |blockLeft |ブール |左にいけないようにするかどうか | |warp |座標ID |座標ID先にワープする | |hitpoint |整数 |HPに整数値を足す。(負数で引く) | |magicpoint |整数 |MPに整数値を足す。(負数で引く) | |bottomMC |MCのリンゲージ|キャラの後ろに表示 | |bottomMCTarget|MCのリンゲージ|動いたキャラの後ろに表示 | |topMC |MCのリンゲージ|キャラの前に表示 | |topMCTarget |MCのリンゲージ|動いたキャラの前に表示 | |pose |stand/sit |キャラの姿勢を設定します | |direct |0, 1, 2, 3 |0:上, 1:右, 2:下, 3:左 に向かせる | |move |0, 1, 2, 3 |(方向はdirectと同じ)に移動させる | |sound |SEタイミングID|SEタイミングIDに関連付けられたサウンドを流す(BGM×) | |soundTheme |SEテーマID |SEをSEテーマにしたがって変更 | |soundBack |指定なし |SEをユーザが指定していた設定に戻す | |effectImport |type名 |同じtemplate内の特定のtypeのエフェクトを自身で実行 | | | |対象エフェクト内に無効化されるエフェクトがあると | | | |そのエフェクトは実行されません | | | |(ex:enterでalwaysをImportするが、poseは無効化される)| |callFunction |ステージClass |ステージに関連付けられたクラスの | | | のメソッド名|メソッドを呼び出します。(引数も複数指定可能) | +―――――――+―――――――+――――――――――――――――――――――――――+ また、それぞれのエフェクトには対応するタイミングがあります。 下記のテーブルを参照してください(○が対応、×は無効化されるだけで保持されます)。 +―――――――+―――+―――+―――+―――+―――+―――+―――+―――+―――+―――+ |エフェクト名 |enter | out |always| stay |leave | come |moving| talk | hear |shift | +―――――――+―――+―――+―――+―――+―――+―――+―――+―――+―――+―――+ |blockUP | × | × | ○ | × | × | × | × | × | × | × | |blockDown | × | × | ○ | × | × | × | × | × | × | × | |blockRight | × | × | ○ | × | × | × | × | × | × | × | |blockLeft | × | × | ○ | × | × | × | × | × | × | × | |warp | × | × | × | × | × | ○ | × | ○ | ○ | ○ | |hitpoint | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |magicpoint | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |bottomMC | ○ | × | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | |bottomMCTarget| × | × | × | × | × | × | × | × | ○ | ○ | |topMC | ○ | × | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | |topMCTarget | × | × | × | × | × | × | × | × | ○ | ○ | |pose | ○ | × | × | ○ | ○ | ○ | × | ○ | ○ | ○ | |direct | ○ | × | ○ | ○ | ○ | ○ | × | ○ | ○ | ○ | |move | ○ | × | × | × | × | ○ | × | ○ | ○ | ○ | |sound | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |soundTheme | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |soundBack | × | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |effectImport | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | |callFunction | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | +―――――――+―――+―――+―――+―――+―――+―――+―――+―――+―――+―――+ --> <!-- 常時適用します。 --> <effect type="always"> blockUp:false blockDown:false blockRight:false blockLeft:false </effect> </template> <template id="pandora_box"> <!-- そのマップにとどまっているとき --> <effect type="stay"> # TestRoomInstance.createBubble (chrInfo, "floor", "4") callFunction:createBubble floor 4 </effect> </template> </information> <!-- マップ定義 --> <main> <!-- x座標を指定します。 id属性でx座標が指定します。(一番上の座標が0です。) import属性でのみテンプレートエフェクトを読み込むことが出来ます。 --> <x id="0" /> <x id="1"> <!-- 指定した座標の情報を書きます。 id属性でy座標を指定します。(一番上の座標が0です。) また、import属性でテンプレートエフェクトを読み込みことが出来ます。 エフェクト設定をしない場合は省略することができます。 --> <panel id="1" import="pandora_box" /> <!-- エフェクトを定義する場合はpanelに属性を定義します(ただし、非推奨です)。 エフェクトの書き方はtemplateと同じです。 この書き方はしばらくはサポートしますが、将来サポートをやめる可能性があります。 なので、書くときはtemplate要素を利用してください。 --> <panel id="2"> sound:my_sound </panel> </x> <!-- このタグも省略可能です。 <x id="2" /> --> </main> </root>
(ほとんど)XMLっぽい構文で定義します。 <?xml version="1.0" encoding="UTF-8"?> <!-- ルートノード type属性で何を定義しているかを判断します。 "stage"に設定した場合はステージ定義になります。 ステージのベースMCや座標定義、エフェクトの設定をします。 --> <root type="stage"> <!-- ヘッダー --> <information> <!-- ステージ名を指定します。 lang属性で言語を指定します。 lang属性に指定できる文字列は以下の通りです。 +――+―――――+ |lang|定義内容 | +――+―――――+ |jp |日本語 | |en |英語 | |id |ステージID| +――+―――――+ ステージIDはステージを指定するときに使用します。 IDが無かったりIDが被ったりするとバグ発生。 --> <title lang="jp">テストルーム</title> <title lang="en">Test Room</title> <title lang="id">test_room</title> <!-- リンゲージ名で共通する部分を指定します。 最後の"."は抜いてください。 --> <package name="com.gmail.aal.gpp.stage" /> <!-- nameで定義先、contentで定義内容を書きます。 name属性で指定できる物は以下の通りです。 +―――――+――――――――-+――――――――――――――――――――――-+ |name |content |内容 | +―――――+――――――――-+――――――――――――――――――――――-+ |areaID |エリアIDのみ |このステージがどのエリアかを指定 | |radio |ブール |ラジヲが使えるかどうか | |radionum |0~9 |ラジヲが幾つ使えるか(radio=true時のみ有効) | |video |ブール |ビデヲが使えるかどうか | |rulanable |ブール |ルーラ可能なステージかどうか | |walkSpeed |tardy/normal/fast|ルーラ可能なステージかどうか | |anonymous |ブール |名前を強制名無しにするかどうか | |topLayer |URL(未定義で無効)|上にswfを重ねる。相対はmain.swfが基準 | |stageMC |MCのリンゲージ |ステージ背景となるMCを指定します | |width |1以上の整数 |ステージのマス数(x座標) | |height |1以上の整数 |ステージのマス数(y座標) | |moveX |整数 |1マス移動したときのx座標移動量 | |moveY |整数 |1マス移動したときのy座標移動量 | |bgColor |整数 |背景色(省略でデフォルト色になります | |bgImg |整数 |背景画像 (相対パスはmain.swf基準。) | | | |""でデフォルト画像。省略で非表示にできます。)| |se |SEテーマID |初期設定でのSEテーマを設定します | |bgm |BGMID |初期設定でのBGMを設定します | +―――――+――――――――-+――――――――――――――――――――――-+ ただし、これ以外にも独自に設定することは可能ですが非推奨。 独自に設定したいものがある場合はvalue要素を使ってください。 --> <meta name="areaID" content="test" /> <meta name="radio" content="false" /> <meta name="radionum" content="0" /> <meta name="video" content="false" /> <meta name="rulanable" content="true" /> <meta name="walkSpeed" content="normal" /> <meta name="stageMC" content="TestRoom" /> <meta name="width" content="3" /> <meta name="height" content="3" /> <meta name="moveX" content="40" /> <meta name="moveY" content="20" /> <!-- 定義とは関係ないけど保持したいデータ。 <ステージID>.value.<id属性>で取得出来ます。 自分自身のvalueを見る場合は"<ステージID>."を省略します。 --> <value id="test" data="データが入ります。" /> <!-- 座標ID定義。 rulaや部屋移動などでこれを使います。指定する属性は以下の通りです。 +――-+―――――――――――――――――――+ |属性 |内容 | +――-+―――――――――――――――――――+ |id |座標ID。これを使って指定出来る | |x |x座標。整数値 | |y |y座標。整数値 | |dir |向いている方向(0:右, 1:下, 2:左, 3:上)| +――-+―――――――――――――――――――+ dir属性は特定の処理(rulaなど)以外は全方向対応。 座標IDを指定する場合は<ステージID>.<座標ID>で指定。 自分自信のpointを見る場合は"<ステージID>."を省略します。 --> <point id="rula" x="0" y="0" dir="0" /> <point id="gotoNextRoom" x="0" y="0" dir="0" /> <!-- テンプレートエフェクトです。 特定のタグで使えるimport属性を利用して読み込みます。 idには任意の名前を指定できますが、マジックIDというものが在ります。 マジックIDを指定すると、特殊な処理になります。 マジックIDは以下の通りです。 +―――――+―――――――――――――――――+ |マジックID|処理 | +―――――+―――――――――――――――――+ |default |全てのマスでの初期値を設定します。| +―――――+―――――――――――――――――+ 要素にエフェクト内容を書きます。詳細は下記。 --> <template id="default"> <!-- エフェクトタイミングの定義です。 type属性でタイミングを指定します。 type属性に指定できるタイミングは以下の通りです。 +――――+―――――――――――――――――+ |type属性|タイミング | +――――+―――――――――――――――――+ |enter |そのステージに入った瞬間 | |out |そのステージを出た瞬間 | |always |常時(24回/sec) | |stay |その座標に到着~出発直前(24回/sec)| |leave |その座標から動いた瞬間 | |come |その座標に着いた瞬間 | |moving |その座標を動いた直後~到着直前 | |talk |自分が話した瞬間 | |hear |ほかの人が話した瞬間 | |shift |ほかの人が動いた瞬間 | +――――+―――――――――――――――――+ また、上記以外のtype属性を指定しても使えます。 その場合はimportEffectを使用してください。(下記参照) 要素にエフェクト内容を書きます。 書き方は下記の通りです。 +――――――――――――――――――――――――――――――――――――――――― # 先頭に"#"をつけるとコメントです。 エフェクト名:内容 # 複数内容を指定する場合は" "を1つ間においてください。 # 2個以上同じエフェクトを置くことはできません(そのうち改善) エフェクト名:内容1 内容2 エフェクト名:内容1 内容2 内容3 +――――――――――――――――――――――――――――――――――――――――― 同じエフェクトがある場合は下に書いたほうが優先されます。 同じエフェクトで複数記述はできません。 (ただし、一部のエフェクトは" "で区切って記述すれば出来ます。) エフェクトは下記のテーブルを参照。 +―――――――+―――――――+――――――――――――――――――――――――――+ |エフェクト名 |許可データ |意味 | +―――――――+―――――――+――――――――――――――――――――――――――+ |blockUP |ブール |上にいけないようにするかどうか | |blockDown |ブール |下にいけないようにするかどうか | |blockRight |ブール |右にいけないようにするかどうか | |blockLeft |ブール |左にいけないようにするかどうか | |warp |座標ID |座標ID先にワープする | |hitpoint |整数 |HPに整数値を足す。(負数で引く) | |magicpoint |整数 |MPに整数値を足す。(負数で引く) | |bottomMC |MCのリンゲージ|キャラの後ろに表示 | |bottomMCTarget|MCのリンゲージ|動いたキャラの後ろに表示 | |topMC |MCのリンゲージ|キャラの前に表示 | |topMCTarget |MCのリンゲージ|動いたキャラの前に表示 | |pose |stand/sit |キャラの姿勢を設定します | |direct |0, 1, 2, 3 |0:上, 1:右, 2:下, 3:左 に向かせる | |move |0, 1, 2, 3 |(方向はdirectと同じ)に移動させる | |se |SEタイミングID|SEタイミングIDに関連付けられたサウンドを流す(BGM×) | |seTheme |SEテーマID |SEをSEテーマにしたがって変更 | |seBack |指定なし |SEをユーザが指定していた設定に戻す | |bgm |BGMID |BGMを変更します。 | |bgmBack |指定なし |BGMをユーザが指定していた設定に戻す | |effectImport |type名 |同じtemplate内の特定のtypeのエフェクトを自身で実行 | | | |対象エフェクト内に無効化されるエフェクトがあると | | | |そのエフェクトは実行されません | | | |(ex:enterでalwaysをImportするが、poseは無効化される)| |callFunction |ステージClass |ステージに関連付けられたクラスの | | | のメソッド名|メソッドを呼び出します。(引数も複数指定可能) | +―――――――+―――――――+――――――――――――――――――――――――――+ また、それぞれのエフェクトには対応するタイミングがあります。 下記のテーブルを参照してください(○が対応、×は無効化されるだけで保持されます)。 +―――――――+―――+―――+―――+―――+―――+―――+―――+―――+―――+―――+ |エフェクト名 |enter | out |always| stay |leave | come |moving| talk | hear |shift | +―――――――+―――+―――+―――+―――+―――+―――+―――+―――+―――+―――+ |blockUP | × | × | ○ | × | × | × | × | × | × | × | |blockDown | × | × | ○ | × | × | × | × | × | × | × | |blockRight | × | × | ○ | × | × | × | × | × | × | × | |blockLeft | × | × | ○ | × | × | × | × | × | × | × | |warp | × | × | × | × | × | ○ | × | ○ | ○ | ○ | |hitpoint | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |magicpoint | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |bottomMC | ○ | × | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | |bottomMCTarget| × | × | × | × | × | × | × | × | ○ | ○ | |topMC | ○ | × | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | |topMCTarget | × | × | × | × | × | × | × | × | ○ | ○ | |pose | ○ | × | × | ○ | ○ | ○ | × | ○ | ○ | ○ | |direct | ○ | × | ○ | ○ | ○ | ○ | × | ○ | ○ | ○ | |move | ○ | × | × | × | × | ○ | × | ○ | ○ | ○ | |se | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |seTheme | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |seBack | × | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |bgm | ○ | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |bgmBack | × | ○ | × | × | ○ | ○ | × | ○ | ○ | ○ | |effectImport | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | |callFunction | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | ○ | +―――――――+―――+―――+―――+―――+―――+―――+―――+―――+―――+―――+ --> <!-- 常時適用します。 --> <effect type="always"> blockUp:false blockDown:false blockRight:false blockLeft:false </effect> </template> <template id="pandora_box"> <!-- そのマップにとどまっているとき --> <effect type="stay"> # TestRoomInstance.createBubble (chrInfo, "floor", "4") callFunction:createBubble floor 4 </effect> </template> </information> <!-- マップ定義 --> <main> <!-- x座標を指定します。 id属性でx座標が指定します。(一番上の座標が0です。) import属性でのみテンプレートエフェクトを読み込むことが出来ます。 --> <x id="0" /> <x id="1"> <!-- 指定した座標の情報を書きます。 id属性でy座標を指定します。(一番上の座標が0です。) また、import属性でテンプレートエフェクトを読み込みことが出来ます。 エフェクト設定をしない場合は省略することができます。 --> <panel id="1" import="pandora_box" /> <!-- エフェクトを定義する場合はpanelに属性を定義します(ただし、非推奨です)。 エフェクトの書き方はtemplateと同じです。 この書き方はしばらくはサポートしますが、将来サポートをやめる可能性があります。 なので、書くときはtemplate要素を利用してください。 --> <panel id="2"> sound:my_sound </panel> </x> <!-- このタグも省略可能です。 <x id="2" /> --> </main> </root>

表示オプション

横に並べて表示:
変化行の前後のみ表示:
目安箱バナー