def文の練習^^

投稿者:       256 mini 池ちゃん(翡翠ヶ池) 投稿日:2012/06/28 17:34

http://rmake.jp/games/15165/play

↑のゲームで練習!

スクリプト内容(開始スクリプト)
setVariable("上昇量", 300)
setMoneyName("スラー")
setDenomination("S")
addMoney(0)

def lvup(a)
setVariable("EXP", getVariable("EXP") + a) #aの数値分経験値が手に入る
speak(a,"EXP入手")

if getVariable("EXP") >= getVariable("総合EXP") #経験値が総合経験値より上の時
levelUpPartyMember("playerCharacter")
setPartyMemberHealingAll() #全回復します、消してもおk
speak("レベルアップ!")
setVariable("総合EXP",getVariable("総合EXP") + getVariable("上昇量"))
setVariable("上昇量", getVariable("上昇量") + 300)

speak("現在のレベルは",getLevel()) #←現在のLv、↓次のLvアップに必要な経験値の表示
speak("次のレベルアップまで",getVariable("総合EXP") - getVariable("EXP"))
else

speak("次のレベルアップまで",getVariable("総合EXP") - getVariable("EXP"))
 end
end
 #↓お金入手
def kane(b)
addMoney(b) #bの数値分お金が手に入る
speak(b,"スラー入手") 
speak("現在の所持金は",getMoney(),"スラー")

end


自力で細かいLvUPのスクリプトの作成難しかったw

敵のスクリプト内容(例)
if getTurnBattleResult() == 
    getTurnBattleWin()
  #勝ったとき
  lvup(150)
kane(10)
elsif getTurnBattleResult() ==
    getTurnBattleLose()
  #負けたとき
  speak("ドンマイ")

elsif getTurnBattleResult() ==
    getTurnBattleRunAway()
  #逃げたとき
  speak("逃げたなっ!")
setPartyMemberDeathAll() #逃げたら死ぬw


end

と簡単です^^

コメントする

コメントするには、ログインする必要があります。

コメント一覧

       mini @gsenkyg(投稿日:2014/01/02 00:37, 履歴)
こんにちは
この関連について彷徨って色々と試してみましたが、自分にはこれがシンプルで一番使い勝手が良くパクらせて頂きました。多少自分にあうよう改ざんさせて頂きましたが、殆どこのままです。
改良点はパーティーメンバー全員も一緒にレベルUPさせるように仕込んでそみました。次に目指すは、これを使ってパーティメンバーでも交代あり3バトルメンバーのみレベルUP方法を模索中です。
       256 mini 池ちゃん(翡翠ヶ池)(投稿日:2014/01/02 09:26, 履歴)
おぉ、お役に立てたのなら、なによりです。

困ったらそうだんしてくださいな。
Cdv30200 aoi icon mini aoihikawa(投稿日:2012/06/28 18:11, 履歴)
if文やdef文といった括りごとに
ネストを整理すると、見やすくなります。

setVariable("上昇量", 300) 
setMoneyName("スラー") 
setDenomination("S") 
addMoney(0) 
 
#↓経験値入手 
def lvup(a) 
  setVariable("EXP", getVariable("EXP") + a) #aの数値分経験値が手に入る 
  speak(a,"EXP入手") 
  
  if getVariable("EXP") >= getVariable("総合EXP") #経験値が総合経験値より上の時 
    levelUpPartyMember("playerCharacter") 
    setPartyMemberHealingAll() #全回復します、消してもおk 
    speak("レベルアップ!") 
    setVariable("総合EXP",getVariable("総合EXP") + getVariable("上昇量")) 
    setVariable("上昇量", getVariable("上昇量") + 300) 
    
    speak("現在のレベルは",getLevel()) #←現在のLv、↓次のLvアップに必要な経験値の表示 
    speak("次のレベルアップまで",getVariable("総合EXP") - getVariable("EXP")) 
  else 
    
    speak("次のレベルアップまで",getVariable("総合EXP") - getVariable("EXP")) 
  end 
end 

#↓お金入手 
def kane(b) 
  addMoney(b) #bの数値分お金が手に入る 
  speak(b,"スラー入手")  
  speak("現在の所持金は",getMoney(),"スラー") 
end


if getTurnBattleResult() ==  
    getTurnBattleWin() 
  
  #勝ったとき 
  lvup(150) 
  kane(10) 
elsif getTurnBattleResult() == 
    getTurnBattleLose() 
  
  #負けたとき 
  speak("ドンマイ") 
elsif getTurnBattleResult() == 
    getTurnBattleRunAway() 
  
  #逃げたとき 
  speak("逃げたなっ!") 
  setPartyMemberDeathAll() #逃げたら死ぬw 
end


後、気になった点は
「EXP」「総合EXP」の初期値をきちんと
定義しておいた方が良いかなと。
       256 mini 池ちゃん(翡翠ヶ池)(投稿日:2012/06/29 07:56, 履歴)
分かりました^^

初期値がコピーされて無かったみたいですw