コメント

このコメントは、【トピック】やっぱりわかりません。(一定時間経過→収穫のスプリクトへのコメントです。

コメントの内容

Nyan mini rurun9(投稿日:2013/09/18 17:09/18/13)
スクリプトを全部貼る場合、『それぞれの変数が、何を目的として何を入れているのか』をコメントで説明してくれないと…

それから、配列変数の扱い方に慣れてないのだと思いますが
setVariable("m", createArray())
で変数mを配列にはしたけど中身を入れないまま
setVariable("m", true)
とすると変数mにはtrueが入ってるだけで、配列ではなくなります


もしや配列はひとつ、二次元で作れば充分なのでは?
#開始スクリプト
setVariable("作物", createArray())

# 作物[n][m]
# n...0=いくつ持ってるか, 1=名前
# m...作物番号
getVariable("作物")[0]=createArray()
getVariable("作物")[1]=createArray()

getVariable("作物")[1][0]="豆"
getVariable("作物")[1][1]="トマト"
getVariable("作物")[1][2]="きゅうり"
getVariable("作物")[1][3]="小麦"
getVariable("作物")[1][4]="キャベツ"
getVariable("作物")[1][5]="なす"
getVariable("作物")[1][6]="じゃがいも"
getVariable("作物")[1][7]="まじたい"

# 畑...植えてある作物番号が入る、-1なら無し
setVariable("畑", -1)

#イベントスクリプト
if 0<=getVariable("畑") #何か植えてある
 if getFlag("sebu") #セーブしたから枯れた
  speak(getVariable("作物")[1][getVariable("畑")]+"が枯れてしまいました。\n")
 else #セーブはしていない
  t=floor( getTime()/1000 )
  if 20<=t #収穫した
   getVariable("作物")[0][getVariable("畑")]=getVariable("作物")[0][getVariable("畑")]+20
   speak(getVariable("作物")[1][getVariable("畑")]+"を20コ収穫しました。")
   setVariable("畑", -1)
  else #成長中
   tt=20-t
   speak(getVariable("作物")[1][getVariable("畑")]+"は順調に育っています。\nあと"+tt+"秒くらいで実るでしょう。")
  end
 end

elsif getVariable("畑")==-1 #何も植えてない
 a=speakWithSelectArray(getVariable("作物")[1], "何を植えますか?")
 setBaseTime()
 speak(getVariable("作物")[1][a]+"を植えますた\n20秒後が楽しみですね。")
 setVariable("畑", a)

else
 speak("変数「畑」の値がおかしい")
end
よし、動いたのを確認。

コメントの内容(一番最初の投稿)

Nyan mini rurun9(投稿日:2013/09/18 17:09/18/13)
スクリプトを全部貼る場合、『それぞれの変数が、何を目的として何を入れているのか』をコメントで説明してくれないと…

それから、配列変数の扱い方に慣れてないのだと思いますが
setVariable("m", createArray())
で変数mを配列にはしたけど中身を入れないまま
setVariable("m", true)
とすると変数mにはtrueが入ってるだけで、配列ではなくなります


もしや配列はひとつ、二次元で作れば充分なのでは?
#開始スクリプト
setVariable("作物", createArray())

# 作物[n][m]
# n...0=いくつ持ってるか, 1=名前
# m...作物番号
getVariable("作物")[0]=createArray()
getVariable("作物")[1]=createArray()

getVariable("作物")[1][0]="豆"
getVariable("作物")[1][1]="トマト"
getVariable("作物")[1][2]="きゅうり"
getVariable("作物")[1][3]="小麦"
getVariable("作物")[1][4]="キャベツ"
getVariable("作物")[1][5]="なす"
getVariable("作物")[1][6]="じゃがいも"
getVariable("作物")[1][7]="まじたい"

# 畑...植えてある作物番号が入る、-1なら無し
setVariable("畑", -1)

#イベントスクリプト
if 0<=getVariable("畑") #何か植えてある
 if getFlag("sebu") #セーブしたから枯れた
  speak(getVariable("作物")[1][getVariable("畑")]+"が枯れてしまいました。\n")
 else #セーブはしていない
  t=floor( getTime()/1000 )
  if 20<=t #収穫した
   getVariable("作物")[0][getVariable("畑")]=getVariable("作物")[0][getVariable("畑")]+20
   speak(getVariable("作物")[1][getVariable("畑")]+"を20コ収穫しました。")
   setVariable("畑", -1)
  else #成長中
   tt=20-t
   speak(getVariable("作物")[1][getVariable("畑")]+"は順調に育っています。\nあと"+tt+"秒くらいで実るでしょう。")
  end
 end

elsif getVariable("畑")==-1 #何も植えてない
 a=speakWithSelectArray(getVariable("作物")[1], "何を植えますか?")
 setBaseTime()
 speak(getVariable("作物")[1][a]+"を植えますた\n20秒後が楽しみですね。")
 setVariable("畑", a)

else
 speak("変数「畑」の値がおかしい")
end
よし、動いたのを確認。