トピック
イチモク tonton8493

DATファイルによる複数の変数の書き込み&読み込み

何度も申し訳ありません。僕は今、プチコン初心者にも関わらず、PRGを作っています。(このチョイスが間違っている気もしないが…)ただ、DATファイルでプレイヤーのデータ等を記録し管理しようと思いますが、どうも上手くいきません。どうすれば良いか教えて下さい。 知りたいこと 1.DATファイルにて複数の関数を書き込む、そして読み込むにはどうすれば良いか。 2.宣言した変数を他のスロットにそのまま反映させることは可能か。 長文な上に、国語力が無いもので分かりづらいかも知れませんが、わかる方が居ましたらこの無知な私めに教えては頂けないでしょうか
2そうだね
プレイ済み
返信[1]
親投稿
ひろきち henahenachoco
DATの読み書きは ひとつの変数をDATとして保存して、保存したDATをひとつの変数に代入する、 ということしか出来ないので扱いが少し難しいのではと思います。 保存したいデータを全てひとつの配列変数に入れて、その配列変数を保存、 配列変数にDATファイルを読み込んで、保存したときと同じ要素番号の変数をそれぞれの変数に渡してあげたる、 ということをすれば複数の変数をひとつのDATファイルに保存することもできます。 僕はRESTOREでラベルを指定して、 DATAを列挙してそれをREADする、というやり方をしています。 これはこれで解説というか、長めの説明が必要なので、ここのコメントでは省きます… すみません。
4そうだね
プレイ済み
返信[2]
親投稿
otta777 otta777a
DAT形式でファイルをセーブ、ロードする場合は数値配列変数 1つのみという仕様なので配列変数はロード、セーブのための データの一時置き場と考えると良いかと思います。 DAT形式でセーブをする前にそれぞれのステータスの変数の値を 配列変数に代入する。 DAT形式でロードをした後は配列変数の値をそれぞれのステータスの 変数に代入する。 配列変数に文字列の文字コードを1文字ずつ代入するようにすれば 文字列の内容もDAT形式でセーブ、ロードする事ができますよ。 文字数を固定する方が簡単ですが区切り文字を設定すれば任意の 長さの文字列も扱えます。
4そうだね
プレイ済み
返信[3]
親投稿
載せてるプログラムの見えている箇所ってロードっぽいけど、だとしたら変数に対する代入が逆のような…。 GENDER=SAV[0] … にしなければ読み込んだデータを変数に戻せないですよ。(セーブならあってるけど)
3そうだね
プレイ済み
返信[4]
親投稿
代入の羅列を見てセーブかと思ったらロードだったのね
0そうだね
プレイ済み
返信[5]
親投稿
だにえる haru2016nen
»変数を他のスロットに反映 別スロットにある変数はVAR(隠し関数) を使えば取得出来ます。 同期させたい場合は両方のスロットで VARを使う必要があると思います。 ちなみに、いくつもの変数を 反映させる場合は配列にしてCOPYで 取得すると劇的に速かったかと。
2そうだね
プレイ済み
返信[6]
親投稿
MIKI ifconfig
なんでもまとめて一つのファイルに保存・読み込みができる命令作りました。 https://miiverse.nintendo.net/posts/AYIHAAAEAABEVRTtQa5Q3Q (私の 2015/11/29 のプレイ日記) この場合だと7行目以降に vfsavek "pladata", "name$ gender ep hp mp lv fh st fm in i1 i2 i3 i4 i5 i6 i7 i8 i9 i10",0 で保存。 vfloadk "pladata",0 で読み込み。
2そうだね
プレイ済み
返信[7]
親投稿
イチモク tonton8493
アドバイスありがとうございました!参考にさせていただきます!
1そうだね
プレイ済み