3

この行に「キャプチャが多すぎます」というエラーが表示されます。

gM.webServiceUserId,  mute, volume, gM.roundCount,gM.puntajeTotal,gM.tiempo,gM.facebookLogro,gM.twitterLogro,gM.a,gM.b,gM.c,gM.d,gM.e,gM.f,gM.g,gM.h,gM.i,gM.j,gM.k,gM.l,gM.m,gM.n,gM.o,gM.p,gM.q,gM.r,gM.s,gM.t,gM.u,gM.v,gM.w,gM.x,gM.y,gM.z = string.match(saveData, "(%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+) (%d+)")

私のファイルには合計34個のデータがあります。ここでやりたいことは、各行を変数の例に割り当てることです。

on file ( 1,2,3,4,5)
var1=1
var2=2
var3= 3
var4= 4
var5 = 5

変数を追加したときにこのエラーが発生しました。解決策を見つけるのを手伝ってください

ここでやりたいことは、ゲームのシャットダウン時に 34 個の変数を 1 つのファイル (system.DocumentsDirectory) に保存し、ゲームの起動時に再度ロードすることです... 動作しますが、いくつかの変数がありますが、さらに追加すると、そのエラーを取得します....

lua コード コロナ SDK

4

1 に答える 1

4

できることの 1 つは、key=value 形式を使用して、別の方法でデータをファイルに保存することです。

 local saveData = ''
 for k, v in gM do
    saveData = (saveData..k..'='..v..',')
 end
 -- Your code to write the saveData into the save file

その後、次のようにファイルからロード/取得できます。

 for k, v in string.gmatch(s, "(%w+)=(%d+)") do
    gM[k] = v
 end

これは gM 変数に対してのみ機能することに注意してください :) gM にもミュートとボリュームを格納する必要があります (gM.mute、gM.volume)。

于 2013-10-31T00:37:01.980 に答える