【RPGMV】構造体配列

もう大分時間が空いてしまいましたが、RPGツクールMVのver1.5.0からプラグインパラメータなるものが使えるようになりました。

詳細は、こちらの記事から→パラメータに関して

この機能の中の構造体と配列を組み合わせたのがすごく便利だったので紹介してみます。

構造体配列について

とりあえず、制作中のAI自動行動システムを元に説明していきます。

ひと目で分かるかなと思って、スクショも撮ってみました。

まず、構造体配列というのは、「項目を持つデータ」の「まとまり」の事です。

 

構造体は、AIで言うところの”性格”で、性格の名前だったり、攻撃性とかサポート性とかの項目を持ってます。

配列はデータを複数まとめた物です。

性格も一つだけじゃなくてたくさんあるのと同じように、データを複数並べるため、配列という形にします。

構造体配列を使って

構造体配列を使って何ができるかというと、自作のアビリティリストとか、装備強化システムとかがより作りやすくなります!

かくいう、僕も大分前に装備強化システム作っていたのですが、構造体配列が使えなくて、結局未完成で終わってます。

今使ってるゲームに使う予定はないですが、機会あったら構造体配列使って調整してみたいですね(*´∀`*)

設定方法

ある程度パラメータを使える方前提で……ほとんど自分用に取り扱い方書いておきます。

まずは、

/*~struct~構造体名: ~~~ */

で構造体の項目を作成します。(通常のパラメータ設定部分の外で作成します。)

次に、設定した構造体を、通常のパラメータ設定部分で呼び出します。

@type struct<構造体名>[]

の形です([]は配列を表します。)

これで、構造体配列を設定できます!

処理方法

処理する際の注意点としては、文字列で取得されるので、JSON.parse(文字列)を使ってJSONデータ化する必要があります。

しかも、まず配列をデータ化した後、さらに配列の中の文字列を一つ一つデータ化する必要があるため、処理が複雑になるため、上記のスクショみたいな処理になってしまいます。

でもここまでできたら、構造体配列[番号].項目名(例、_personality[3].name)で取得できちゃうので、挑戦してみたい方は挑戦してみるといいかもです。

まとめ

まぁ、プログラミングする方はちょっと難し目ですが、プラグイン利用者は手軽にすごく便利に使える機能です!

僕もこれから、構造体配列利用していろいろ制作してみるので、気が向いたらみなさんも構造体配列いかがでしょうか?

Pocket

コメント

コメントはこちら

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください