銀行を作ろうと頑張った結果orz(質問掲示板)
投稿:
退会したユーザー
投稿:2012/07/24 17:55:24(最新:2012/07/25 16:29:25)

x=true if x=getMoney()>999 setVariable("銀行", 0) case speakWithSelect(3,"1000G","10000G","預けない", "こちらは銀行です。\nいくら預けますか?") when 0 setVariable("銀行",getVariable("銀行")+1000) subMoney(1000) when 1 setVariable("銀行",getVariable("銀行")+10000) subMoney(10000) when 2 speak("そうですか\nありがとうございました。") else speak("すいません、お預かりは1000Gからとなっております。") speak("ありがとうございました。") end end
と書いたら
syntax error, コードに文法的な間違いがあります。 line(行): 2
と出ました。
今、変数、フラグがとても苦手なので、だれか教えてください。
お願いします。
コメントする
コメントするには、ログインする必要があります。
コメント一覧
エラーの原因は2行目の「=」だと。
条件式では「==」にしないと。
それと「x=」ってこれ必要ないような・・・
条件式では「==」にしないと。
それと「x=」ってこれ必要ないような・・・

あ、ほんとだ。
でも、今度は話しかけても何もならなくなりました。
何でですか?教えてください
お願いします。
でも、今度は話しかけても何もならなくなりました。
何でですか?教えてください
お願いします。
case文のendが
if文のelseの後にきてるので、
お金が999以下のときに
何もおこらないのかも。
要するに、途中にあるelseはcase文のelseのため、
このままでは、elseの内容は実行されません・・・
if文のelseの後にきてるので、
お金が999以下のときに
何もおこらないのかも。
要するに、途中にあるelseはcase文のelseのため、
このままでは、elseの内容は実行されません・・・
ところで3行目のsetVariable("銀行", 0)は
所持金が1000以上の時に実行されるけど仕様?
このままだと引き出せないような気がしたもので。
所持金が1000以上の時に実行されるけど仕様?
このままだと引き出せないような気がしたもので。

途中のelseはcaseのになっちゃうので
case文のendの後にもって来るべき。
そうすればif文のelseになりますよーっと。
case文のendの後にもって来るべき。
そうすればif文のelseになりますよーっと。

endの位置って重要ですね。
わかりやすく教えていただきありがとうございました。
わかりやすく教えていただきありがとうございました。
預金引き出し窓口は別に作るとして、何か疑問点などありましたらどーぞぉ
ありがとうございます。
選択肢を増やすというのが、俺には全然わからないです。orz
すごいですね、臨時収入という発想もすごいです。
引き出しも合わせて、作れたので、一応載せました。
最大x*1000までを預けられる事がワカル
ので選択肢配列sに要素を1000,2000,3000,…という形で追加していってるのです
もしx=0つまり999以下しか所持してないなら「選択肢に追加するwhile文」が0回繰り返されて終わる形になってます
s[0]つまり0個目の選択肢がキャンセルで固定してあって、その後は必ず1番目なら1000、2番目なら2000、という選択肢が作られるのがポイントw
引き出し窓口が作れるという事は、何故動くのかが理解できている証拠です。素晴らしい
RPGだとテストプレーに時間かかるので、こうしたイベントスクリプトは動作確認を簡単にする工夫も必要で面倒ですよねぇ
いえいえ、ただコピーしてspeakの中身などを変えただけですよ。
わかりやすく教えていただき、ありがとうございました。