ボタンを使ってみよう


ん〜〜〜〜
どうしたの?
KAGにも慣れてきて、いろいろ作って遊んでるんだけど・・・
すごいじゃない。
不機嫌そうなのはどうして?
KAGって便利なんだけど、同じような属性がいっぱいだし、同じタグを何度も繰り返して書いたりしなきゃいけないしで、色々と面倒だなぁって・・・
人間、楽することばかり考えてたら堕落するよ。
でもぉ〜
しょうがないわね。 じゃあ、マクロ使ってみる?
マクロ?
それって、ドラ○もんの道具みたいに、すごい力で助けてくれる?
そこまですごくはないけど・・・
知ってるとすごく便利だと思うよ。
じゃあ、教えて!
マクロって言うのは、リファレンスによると、「複数のタグや文章を一つのタグで表せるようにする」ための物なんだって。
イマイチよく分からないんだけど・・・
新しい名前のタグを作って、それで色々やっちゃおうってこと。
そんなことができるの?
試しに、下のサンプルを実行してみる?
*start
[macro name="new"]
こんにちは。[p][er]
こんばんは。[p][er]
[endmacro]

[new]
[new]
[new]
macroタグも、[macro] 〜 [endmacro]のセットで使うタグね。
name属性は新しいタグにつける名前。
このタグで囲まれた部分に書かれた文章とかタグとかが、[new]って書くだけで全部実行してくれるわけ。
ほんとだ。
今のはすごく単純な例だったけど、凝ったこともできるよ。
*start
[macro name="base"]
[backlay]
[image storage=%storage layer=base page=back]
[trans method=crossfade time=1000]
[wt]
[endmacro]

[base storage="base_sample.jpg"]
ここのポイントは、imageタグの中にある storage=%storage ね。
%って初めて見るよね。
これは、マクロのタグの中で指定された属性値に置き換える記号なの。
上の例だと、[base storage="base_sample.jpg"] という具合に、マクロタグの中でstorage属性が指定されてるでしょ。この値に置き換えるってこと。
[image storage="base_sample.jpg" layer=base page=back] になるんだね。
これは、別の書き方もできて・・・
*start
[macro name="base"]
[backlay]
[image storage=&mp.storage layer=base page=back]
[trans method=crossfade time=1000]
[wt]
[endmacro]

[base storage="base_sample.jpg"]
これと、さっきのは同じなんだよ。
mp.storage はマクロの中だけの特殊な変数とでも思っておけばいいかな。
変数だから、&を付けてるんだね。
そういうこと。 最初の%を使う方法でも、変数を使う方法でもどちらでもいいんだけど、次のような場合は注意が必要だよ。
*start
[macro name="new"]
[eval exp="f.b=mp.a*10"]
答えは[emb exp="f.b"]
[endmacro]

[new a=100]
この場合は %a っていう使い方はできないから。
%a が変数じゃないから?
そういうこと。
ほかには?
こんなのもあるよ。
*start
[macro name="t"]
[backlay]
[image storage="base_sample.jpg" layer=base page=back]
[trans *]
[wt]
[endmacro]

[t method=crossfade time=1000]
* を書くと、マクロの中で指定された属性がすべて、ここで指定されるの。
なるほど。
つまり・・・
[trans method=%method time=%time] って書くのと一緒だね。
半分正解。
半分だけ?
transタグは上の2つ以外にもいろいろ属性があるでしょ。今は2つ以外は省略してるけど。
そういうものが省略されても、されなくても、大丈夫なのが * を使った書き方。
クリスの書き方だと method と time しか入らないし、どちらかが省略されたらおかしくなるよね。
そっかぁ。
こういう使い方をするときは、* を書いておいた方が無難ってことだね。
そういうこと。
もし、どうしてもそういう書き方がいいんだったら・・・
[trans method=%method|crossfade time=&time|1000]
こう書くと、属性が省略されたときの規定値として設定することができるよ。
へぇ。
いろいろ考えられてるんだね。
マクロを使う時に一番注意しなくちゃいけないのが、セーブデータをロードする時なんだよ。
どういう意味?
マクロの登録情報は、セーブデータとして保存されるの。
つまり・・・
マクロ作成→ゲーム実行→セーブ→マクロ修正→ロード
という順番でプレイすると、ロードしたときにマクロの内容もロードされるから、修正される前のマクロが実行されちゃうの。
変更したはずなのに、実行すると変更されてないってこと?
そう。
デバッグしてる時に陥りやすいワナね。
マクロを修正したら、最初から実行しないといけないってことだね。
そういうこと。
マクロは使いこなせばすごく便利な機能だから、頑張って。
よーし、やるぞぉ!
あ、でも、何でもかんでもマクロにすればいいってワケでもないからね。
増やしすぎても使い切れないし、混乱の元だから。
え?
あはは、やだなぁ。
それくらい分かってるよ。
じゃあ、その画面いっぱいのマクロは・・・?
・・・・・・


前のページ | MENU | 次のページ



inserted by FC2 system