ピカチュウってマスコットとしてあまりにも人気が出すぎているせいで
なんだか逆に、それほど意識して見たことがなかったのですが
あらためてじっくり見てみるとやっぱりかわいいですよね
こんばんは。
きょうは覚え書きの殴り書きだけなのでさして推敲さえしていません。
文章としてあんまり成り立ってないかも。ごめんなさい。
@TCG
新作WWAの合間にちょっとずつ組み直しています。
カードゲームは一度に扱わないといけないパラメータが
表示されてプレイヤーが認識できるものはもちろんのこと、それ以外にもやたら多いので
それを常にちゃんと管理できるように作るのが、にわかでおなじみのぼくには非常に難しい。
というわけで考えたやり方。
へたくそがある程度整合性をくずさないまま制作を進めるための案であって、
プログラムとして理にかなっているとか、そういうことはたぶん全くないです。
---
常に監視されている変数fooがあって、そこに何らかの数値が代入されるたびに
別に設けたイベントファイルの、その番号の内容を実行する。
イベント内容の最後には、「次に行うイベント番号」を書いておけば
処理し終えたら直接その番号のイベントの実行に移る。
fooが0でないときは、ほかの処理よりも優先してそれを行う。
fooが0のときはfooによるイベント処理は行われない。
---
カードをドローするだとか、効果が発生するだとかの他にも、
画面の切り替えとかみたいなものもぜんぶ「イベント」としてバラバラに用意しておいて
fooが呼ぶことでのみ、それらは実行されるよ、というものです。
イベントはfoo専用なので、そこ以外のスクリプト内とは、それらへは一切干渉しません。
イベント同士で勝手に内容を渡しあったりとかもナシ。
foo関連以外のところで行うのは、当たり判定とか、常時分の画面表示とかのみ。
WWAでコマンドバトルやなんかを作る際、背景パーツを変数っぽく使ってみたりする、
あれを参考にしてみました。
WWAでいうと、fooはプレイヤーキャラ、イベント番号の指定は、
該当イベントの起こる座標へのジャンプゲート。イベントファイルは、
ジャンプ先に置いてあるそのための背景パーツ群に該当します。
公開こそしていませんでしたが、WWAで変なコマンドバトルを作る遊びはよくしていたので
このやり方だったら安定して制作を進められるんじゃないか!というわけです。
やろうと思えばコマンドバトルでプレイヤーがあちらこちらへジャンプするみたいなのを、
見た目で表現することもできそう。完成版でそれをやる意味はないけど、どの処理を今
してるのかとかが分かりやすくなるやも。
関係ないけどWWAといえば、パーツにメッセージが設定されてるか否かで
そのパーツに触れた回数のカウントがぜんぜん違うことになるのをなんとかしてほしい。
同じアイテムは同じボックスにスタックできるような処理を作ってたんですが、
メッセージのない扉を開こうとすると、一度にカギが3個ぐらい減っちゃうので参りました。
[1回]