GDevelop で構造体 (Structure) の変数を複製(ディープコピー)するには?

 GDevelop の変数は入れ子にすることができ、そのような変数を「構造体」と言います。

その構造体を複製(コピー)したい時に使えるテクニックを紹介します。

少々力技ですが、JSON を経由させることで、簡単に複製することができます。
こんな感じです↓

まず、コピー先の変数に応じて以下のアクションから選択します。

  • JSONをグローバル変数に変換する
  • JSONをオブジェクト変数に変換する
  • JSONをシーン変数に変換する

そして「JSON文字列」には、コピー元の変数に応じて、以下の式を利用します。

  • 「グローバル変数をJSONに変換」⇒ GlobalVarToJSON()
  • 「オブジェクト変数をJSONに変換する」⇒ ObjectVarToJSON()
  • 「シーン変数をJSONに変換」⇒ ToJSON()

このように一度 JSON へ変換することで、どんな構造の構造体でも複製することができます👍

コメント

このブログの人気の投稿

【GDevelop】セーブデータは暗号化しよう!

GDevelop の「イベント」を正しく理解しよう

GDevelop 5.3 がリリース!なので、ここ最近(2023年1月~2023年11月)の GDevelop バージョンアップまとめ