G~初めてのスクリプト

投稿者:       mini @gsenkyg 投稿日:2014/01/02 22:42

爺も老体に無知打って初めてスクリプトを作成してみました。(w
池ちゃんさんのスクリプトを元に少しだけ手を加えました。
「仲間に加えた中からバトルメンバーのみレベルUPさせる。」そのように考えてみました。
2DRPG

それと大事な事!このゲーム作成及びスクリプト作成の為に皆様から、キャラアニメ、マップチップ、アイコン、アイテムなど多数をお借りしています。厚くお礼申し上げます。皆様ありがとうございます。

#これより池さんのスクリプト借りもの
#~~~開始スクリプト~~~
setVariable("next", 20) #nextはLvupに必要な経験値の量
setVariable("exp", 0) #expは今まで溜めた経験値

def exp(a)
setVariable("exp", getVariable("exp") + a)
#持っている経験値と手に入れた経験値を上書きします。
l = true
 while l
  if getVariable("exp") >= getVariable("next")
  #expがnextを超えている場合、Lvupする。
  levelUp()
  #バトルメンバーのときのみレベルUPする
  if isPartyMember(8196)
  levelUpPartyMember(8196)#王子
end
 if isPartyMember(593)
  levelUpPartyMember(593)#勇者
end
if isPartyMember(1707)
  levelUpPartyMember(1707)#ANATA
end
 if isPartyMember(703)
  levelUpPartyMember(703)#騎士
end
 if isPartyMember(2793)
  levelUpPartyMember(2793)#クロン(仲間)
end
 if isPartyMember(26998)
  levelUpPartyMember(26998)#魔法使い
end
 if isPartyMember(8204)
  levelUpPartyMember(8204)#弓士
end
 if isPartyMember(8199)
  levelUpPartyMember(8199)#大将軍
end
 if isPartyMember(11487)
  levelUpPartyMember(11487)#剣士
end
if isPartyMember(8207)
  levelUpPartyMember(8207)#武闘家
end

  speak("レベルアップ!")
  setVariable("exp",getVariable("next") - getVariable("exp"))
  setVariable("next", floor(getVariable("next") * 1.23))
  speak("現在のレベルは",getLevel()) #←現在のLv、 

  #そして、expからnextを引き nextを1.23倍して小数点を切り捨てる

  elsif getLevel() == 99 && getVariable("next") >= getVariable("exp")
  #Lvが99(限界)の時にexpがnextを超えている場合
  addPlayerHP(getPlayerMaxHP()) ; addPlayerMP(getPlayerMaxMP()) ;
  speak("経験値を使って全回復した")
  setVariable("exp",getVariable("exp") - getVariable("next"))
  
  else #expがnextを超えていない場合。
  speak("次のレベルアップまで",getVariable("next") - getVariable("exp")) 
 l = false
  end
 end

end

#↓お金入手 
def kane(b) 
  addMoney(b) #bの数値分お金が手に入る 
  speak(b,"G入手")  
  speak("現在の所持金は",getMoney(),"Gold") 
end   
 #~~~イベント(敵を倒した時等)~~~ 
  kane(10) 
exp(5) #5の部分は与える経験値の量です、これだけでokです。


上記スクリプトに対するバトルメンバーの外し方です。
少し考えて作ってみました。バトルメンバー以外は外れません。これで仲間を何処か一箇所に集めて置けば
バトルメンバーの入れ替えができるかもです。少しだけ嬉しい気分かも。(w

#これより連続標記。適当なキャラクターに仕込んでます。
case speakWithSelect(10,"王子", "勇者", "クロン", "魔法使い", "ANATA", "騎士", "弓士", "大将軍", "剣士", "武戦家", "外すメンバーを選択して下さい")

 when 0
if removePartyMember(8196)
  speak("王子をパーティからはずしました。")
else
  speak("王子をはずせませんでした。")
end
 when 1
if removePartyMember(593)
  speak("勇者をパーティからはずしました。")
else
  speak("勇者をはずせませんでした。")
end
 when 2
if removePartyMember(2793)
  speak("クロンをパーティからはずしました。")
else
  speak("クロンをはずせませんでした。")
end
  when 3
if removePartyMember(26998)
  speak("魔法使いをパーティからはずしました。")
else
  speak("魔法使いをはずせませんでした。")
end
 when 4
if removePartyMember(1707)
  speak("ANATAをパーティからはずしました。")
else
  speak("ANATAをはずせませんでした。")
end
  when 5
if removePartyMember(703)
  speak("騎士をパーティからはずしました。")
else
  speak("騎士をはずせませんでした。")
end
  when 6
if removePartyMember(8204)
  speak("弓士をパーティからはずしました。")
else
  speak("弓士をはずせませんでした。")
end
  when 7
if removePartyMember(8199)
  speak("大将軍をパーティからはずしました。")
else
  speak("大将軍をはずせませんでした。")
end
  when 8
if removePartyMember(11487)
  speak("剣士をパーティからはずしました。")
else
  speak("剣士をはずせませんでした。")
end
  when 9
if removePartyMember(8207)
  speak("武闘家をパーティからはずしました。")
else
  speak("武闘家をはずせませんでした。")
end
   end


コメントする

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

コメント一覧

コメントはありません。