シュガーアイランド 2024/06/27 01:19

#RPGBakin 初心者向け?講座 配列変数をつかってみる

初心者向けかと聞かれると?マークを付けたくなる。
使わなくても何とかなるような…使えると便利って感じ?

変数関連使いこなせたらステップアップって感じですかね。
自分の備忘録的に書き記したいと思います。

余りに長いのでインポート用のテキストも用意しました。
下の方。中身見たい人はダウンロードしてみてください

今回つくるもの

長くなるかもですが実用的な物を

こんな感じで
5人の届け先、5つの物をランダムに
2つの選択肢を提示して
リクエストどおりの物を届け先に物を届けたら依頼達成+1
といった物を作りたいと思います。

其の1

そもそも配列変数とは何ぞ?って話ですが

複数の変数をまとめて管理できる変数です。
配列変数を使うことで複数の変数をまとめて一つの変数内で管理することができます。
この変数は1ゲーム内のどこからでも参照することができます。

ウィキのコピペです。

個人的なたとえになりますが


3年A組 1 佐藤
     2 田中
みたいな感じで大きなグループの中に管理するための番号があって
その番号は何かを表しているみたいなイメージでしょうか…

其の2


↑発注側の工程

まずは
届け先を5人
届ける物5つ
という部分の変数を割り当てていきます。
変数の作り方ですが
とりあえず今回は文字列(人の名前とかを使いたいので)
変数ボックス>文字列変数への代入>↓矢印を押して


で配列変数名「誰に」ポインタ「1」を作り

ポインタ1に「Bakin」※届け先の名前を文字として入力します。

なんで1からなのかというと変数の初期値がゼロなので
イベントが発生してなくてもゼロだと反応してしまう可能性があるので
危険を回避するためです。

「誰に」ポインタ「2」○○さん
「誰に」ポインタ「3」○○さん
といった感じでとりあえずポインタ1~6に宛先(届ける先の人の名前とか)
を用意してください

更に届ける物の方も
配列変数名「何を」という名でポインタ「1」に毒消しハーブとか薬草とかお金○○Gとか
図鑑とかにある物から5個作ってください


自分はこんな感じです。

其の3

ランダムにしたいので乱数を用意します。
この乱数ですがアイテムやら届け先の人などを特定するために必要な数字になりますので
4つ用意します。

プレイヤーが2択のうちどちらの選択肢を選ぶか分からないので
4つ作る感じです。

とりあえず通常の変数を4つ作ります。
自分は
ランダム化1
ランダム化2
ランダム化3
ランダム化4
としました。
で、その変数が1~6のどれかを表して欲しいので(届け先と届ける物が各5個なので)


複雑な変数ボックスの操作で
ランダム化1を1~6になる様にします。
それを4つとも同じ処理します。

次の工程ですが
選択肢の中の割り当て準備です。

依頼[1]に依頼[2]を届ける
依頼[3]に依頼[4]を届ける

という感じにします。
更に詳しく書きますと

依頼[誰に[ランダム化1]]に依頼[何を[ランダム化2]]を届ける
依頼[誰に[ランダム化3]]に依頼[何を[ランダム化4]]を届ける

厳密にはこういう感じです。
「選択肢から選んで結果を確認」というコマンドに
2重カッコ(カッコの中に変数をあてる)が使えないので割り当てるしかないって感じの工程になります。


新たに配列変数を足します。
「依頼」という配列変数を追加して


ポインタ1に
誰か[ランダム化1]
を割り当てます。
ポインタ2に
何を[ランダム化2]
ポインタ3に
誰か[ランダム化3]
を割り当てます。
ポインタ4に
何を[ランダム化4]
と割り当てます。
ポインタに変数を割り当てるという
だんだん何をしてるか分からなくなってきそうですw

其の4


準備が終わったので選択肢に入れます

「選択肢から選んで結果を確認」の中に

\$[依頼][1]に\$[依頼][2]を届ける
\$[依頼][3]に\$[依頼][4]を届ける
選び直す
今はやめとく

と選択肢を用意します。
で決定した選択肢ごとに何をして行くか決めていきます。
決めた内容がランダムなので届ける相手と届ける物を記憶させるための
変数を用意します。
・相手の変数
・荷物の変数
一番上の選択肢を選んだら
[依頼][1]→相手の変数
[依頼][2]→荷物の変数
となる様に組みます。
中身は
依頼[誰に[ランダム化1]]→相手の変数
依頼[何を[ランダム化2]]→荷物の変数
という感じです。
次の選択肢は
[依頼][3]→相手の変数
[依頼][4]→荷物の変数
となる様に組みます。
中身は
依頼[誰に[ランダム化3]]→相手の変数
依頼[何を[ランダム化4]]→荷物の変数
という感じで最終的に「相手の変数」「荷物の変数」に集約されます。


選び直す という選択肢ですが
ここに進んだらラベルジャンプで乱数化する前にジャンプさせます。
そうする事によりまた再抽選されます。

一部割愛しましたが


このスクショかインポートで次のテキストを読み込んで下さい。

依頼主の姉ちゃん.txt (5.34kB)

ダウンロード

其の5


まずシート条件で相手の変数を確認します。
届け先に該当してるならアイテムを持っているかの確認をスタートしていきます。
ラベルジャンプで「荷物の変数」へ各荷物の変数ラベルに飛ばします。
で物を持っていたらアイテム減らして
依頼達成!みたいに組みます。

相手の変数1.txt (14.66kB)

ダウンロード

相手の変数1を出力しました。
これをコピペして5人分用意して
シート条件の相手の変数を変更すれば5人分作れます。

イベントのお店を流用して品物をお店で売れば動画と同じ事が出来るようになると思います。

長かった…最後の方はもう疲れてやっつけですw
質問あれば加筆しますw

覚えると便利ですが
普通のRPG作るとき使うか?って疑問もありますがまぁ
応用は色々と出来そうなので使ってみます?w

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

記事のタグから探す

月別アーカイブ

限定特典から探す

記事を検索