コメント
このコメントは、【トピック】カスタムメニューで図鑑を表示させたいのですが…へのコメントです。コメントの内容
コメントの内容(一番最初の投稿)
退会したユーザー(投稿日:2012/11/18 14:11/18/12)
今更かもですがどうしても気になるので整理。
スクリプト/コツ/文法エラーを出しにくいスクリプトの書き方
見やすく書くことは結構重要なことですよ。
ついでにちょっと修正
池ちゃん(さん)の方法のほうが早いけど
二次元配列が苦手ならとりあえずこれでも。
setCustomParamMenuEnable(true) setCustomParamMenuName("a") setVariable("testParamValue", 1) setVariable("testaParamValue", 28) def onShowCustomParameter() setCustomParamName(0, "test") setCustomParamValue(0, getVariable("testParamValue")) setCustomParamName(1, "testa") setCustomParamValue(1, getVariable("testaParamValue")) setCustomParamName(2, "delete") setCustomParamValue(2, 30) deleteCustomParam(2) drawCustomParam() imageHandle = showImagePosition(300, 32, 74) #開始スクリプトなどで設定 setVariable("項目",createArray()) # 5項目ある図鑑をすべて???にする i = 0 while i < 5 getVariable("項目")[i]= "???" #ゲットしていない物を???という項目にする i = i + 1 end setVariable("説明文",createArray()) #説明文を考える getVariable("説明文")[0] = "アイテム1" getVariable("説明文")[1] = "アイテム2" getVariable("説明文")[2] = "アイテム3" getVariable("説明文")[3] = "アイテム4" getVariable("説明文")[4] = "アイテム5" #図鑑を参照したとき(本棚にイベントをはっつけるなど) i = 0 while i < 1 #図鑑ループ開始 #都合により無駄に改行してます(←見易くする意味があるなら無駄じゃない) case speakWithSelect(6, getVariable("項目")[0], getVariable("項目")[1], getVariable("項目")[2], getVariable("項目")[3], getVariable("項目")[4], "やめる", "参照したい項目を選んでね") when 0 n = 0 when 1 n = 1 when 2 n = 2 when 3 n = 3 when 4 n = 4 when 5 speak("図鑑を閉じた"); i = 1 end #項目caseのend if i == 0 if getVariable("項目")[n] == "???" speak("まだ参照できません") else speak(getVariable("説明文")[n]) end end end #図鑑ループend #デパック用? speak("カスタムパラメーター長 ", getCustomParamLength()) speak("getCustomParamMenuEnable = ", getCustomParamMenuEnable(), "\ngetCustomParamMenuName = ", getCustomParamMenuName()) end #onShowCustomParameter関数end
スクリプト/コツ/文法エラーを出しにくいスクリプトの書き方
見やすく書くことは結構重要なことですよ。
ついでにちょっと修正
setCustomParamMenuEnable(true) setCustomParamMenuName("a") setVariable("testParamValue", 1) setVariable("testaParamValue", 28) def onShowCustomParameter() setCustomParamName(0, "test") setCustomParamValue(0, getVariable("testParamValue")) setCustomParamName(1, "testa") setCustomParamValue(1, getVariable("testaParamValue")) setCustomParamName(2, "delete") setCustomParamValue(2, 30) deleteCustomParam(2) drawCustomParam() imageHandle = showImagePosition(300, 32, 74) #開始スクリプトなどで設定 setVariable("項目",createArray()) i = 0; max = 5 #後々増やす可能性も考えて変数に項目数を入れとく while i < max getVariable("項目")[i]= "???" #すべての項目を???にする i = i + 1 end setVariable("説明文",createArray()) #説明文入力 getVariable("説明文")[0] = "アイテム1" getVariable("説明文")[1] = "アイテム2" getVariable("説明文")[2] = "アイテム3" getVariable("説明文")[3] = "アイテム4" getVariable("説明文")[4] = "アイテム5" #図鑑を参照したとき(本棚にイベントをはっつけるなど) serect = 0 while serect < max #図鑑ループ開始 serect = speakWithSelect(6, getVariable("項目")[0], getVariable("項目")[1], getVariable("項目")[2], getVariable("項目")[3], getVariable("項目")[4], "やめる", "参照したい項目を選んでね") if serect == max then speak("図鑑を閉じた") else #「やめる」を選んでなければ項目参照 if getVariable("項目")[n] == "???" speak("まだ参照できません") else speak(getVariable("説明文")[n]) end end end #図鑑ループend #デパック用? speak("カスタムパラメーター長 ", getCustomParamLength()) speak("getCustomParamMenuEnable = ", getCustomParamMenuEnable(), "\ngetCustomParamMenuName = ", getCustomParamMenuName()) end #onShowCustomParameter関数end
池ちゃん(さん)の方法のほうが早いけど
二次元配列が苦手ならとりあえずこれでも。
スクリプト/コツ/文法エラーを出しにくいスクリプトの書き方
見やすく書くことは結構重要なことですよ。
ついでにちょっと修正
池ちゃん(さん)の方法のほうが早いけど
二次元配列が苦手ならとりあえずこれでも。