コメント

このコメントは、【トピック】ぜんぜん分からない・・・へのコメントです。

コメントの内容

Cdv30200 aoi icon mini aoihikawa(投稿日:2011/11/07 16:11/07/11)
endの挿入箇所が間違っています。

endは数を合わせて入れれば良いというものではなく、
if文やcase文といった「処理の終了位置」を定義する文字です。

そのため、きちんとif文の終了位置、caseの終了位置に合わせて
endを挿入してあげる必要があります。

[ 修正前]
playBGM(87309) 
setVariable("モンスター遭遇",getVariable("モンスター遭遇") + 1) 
startTurnBattle(12576) 
if getTurnBattleResult() ==  
   getTurnBattleWin() 
  #勝ったとき 
  levelUpCheck() 
  setVariable("a", rand(15)) 
  if getVariable("a") == 0 
    speak("スネークスが仲間になりたそうにこちらを見ている") 
      case speakWithSelect(2,"する","しない",  
           "仲間にしますか?") 
      when 0 
        playSound(92117) 
        speak("スネークスを自宅に送りました。") 
        setVariable("モンスター捕獲",getVariable("モンスター捕獲") + 1) 
        setFlag("スネークス仲間入り", true) 
      when 1 
        
        
        
      speak("マイルを70mill手に入れた") 
      addMoney(70) 
      
elsif getTurnBattleResult() == 
      getTurnBattleLose() 
  #負けたとき 
  setPartyMemberHealingAll() 
  warp(17024, 7, 6) 
  
elsif getTurnBattleResult() == 
      getTurnBattleRunAway() 
  #逃げたとき 
      end #-----どこからの終了か分からない
  end #-----どこからの終了か分からない
end


[ 修正後]
playBGM(87309) 
setVariable("モンスター遭遇",getVariable("モンスター遭遇") + 1) 
startTurnBattle(12576) 
if getTurnBattleResult() ==  
   getTurnBattleWin() 
  #勝ったとき 
  levelUpCheck() 
  setVariable("a", rand(15)) 
  if getVariable("a") == 0 
    speak("スネークスが仲間になりたそうにこちらを見ている") 
      case speakWithSelect(2,"する","しない",  
           "仲間にしますか?") 
      when 0 
        playSound(92117) 
        speak("スネークスを自宅に送りました。") 
        setVariable("モンスター捕獲",getVariable("モンスター捕獲") + 1) 
        setFlag("スネークス仲間入り", true) 
      when 1 
        
        
        
      end #-----case文の終了位置です
      speak("マイルを70mill手に入れた") 
      addMoney(70) 
      
  end #-----if文の終了位置です
elsif getTurnBattleResult() == 
      getTurnBattleLose() 
  #負けたとき 
  setPartyMemberHealingAll() 
  warp(17024, 7, 6) 
  
elsif getTurnBattleResult() == 
      getTurnBattleRunAway() 
  #逃げたとき 
end

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

Cdv30200 aoi icon mini aoihikawa(投稿日:2011/11/07 16:11/07/11)
endの挿入箇所が間違っています。

endは数を合わせて入れれば良いというものではなく、
if文やcase文といった「処理の終了位置」を定義する文字です。

そのため、きちんとif文の終了位置、caseの終了位置に合わせて
endを挿入してあげる必要があります。

[ 修正前]
playBGM(87309) 
setVariable("モンスター遭遇",getVariable("モンスター遭遇") + 1) 
startTurnBattle(12576) 
if getTurnBattleResult() ==  
   getTurnBattleWin() 
  #勝ったとき 
  levelUpCheck() 
  setVariable("a", rand(15)) 
  if getVariable("a") == 0 
    speak("スネークスが仲間になりたそうにこちらを見ている") 
      case speakWithSelect(2,"する","しない",  
           "仲間にしますか?") 
      when 0 
        playSound(92117) 
        speak("スネークスを自宅に送りました。") 
        setVariable("モンスター捕獲",getVariable("モンスター捕獲") + 1) 
        setFlag("スネークス仲間入り", true) 
      when 1 
        
        
        
      speak("マイルを70mill手に入れた") 
      addMoney(70) 
      
elsif getTurnBattleResult() == 
      getTurnBattleLose() 
  #負けたとき 
  setPartyMemberHealingAll() 
  warp(17024, 7, 6) 
  
elsif getTurnBattleResult() == 
      getTurnBattleRunAway() 
  #逃げたとき 
      end #-----どこからの終了か分からない
  end #-----どこからの終了か分からない
end


[ 修正後]
playBGM(87309) 
setVariable("モンスター遭遇",getVariable("モンスター遭遇") + 1) 
startTurnBattle(12576) 
if getTurnBattleResult() ==  
   getTurnBattleWin() 
  #勝ったとき 
  levelUpCheck() 
  setVariable("a", rand(15)) 
  if getVariable("a") == 0 
    speak("スネークスが仲間になりたそうにこちらを見ている") 
      case speakWithSelect(2,"する","しない",  
           "仲間にしますか?") 
      when 0 
        playSound(92117) 
        speak("スネークスを自宅に送りました。") 
        setVariable("モンスター捕獲",getVariable("モンスター捕獲") + 1) 
        setFlag("スネークス仲間入り", true) 
      when 1 
        
        
        
      end #-----case文の終了位置です
      speak("マイルを70mill手に入れた") 
      addMoney(70) 
      
  end #-----if文の終了位置です
elsif getTurnBattleResult() == 
      getTurnBattleLose() 
  #負けたとき 
  setPartyMemberHealingAll() 
  warp(17024, 7, 6) 
  
elsif getTurnBattleResult() == 
      getTurnBattleRunAway() 
  #逃げたとき 
end