これって簡略化できない?(長文)(質問掲示板)
投稿:
rdjk5242
投稿:2012/02/10 20:23:10(最新:2012/02/11 10:56:11)
rdjk5242
投稿:2012/02/10 20:23:10(最新:2012/02/11 10:56:11)
ランダムの練習で作った開始スクリプトです。
また、giveEquipment(10289)
は魔法です。
タイトルに書いたように,もっと簡単に書く方法はないですか?
よろしくお願いします。
ツイート
また、giveEquipment(10289)
は魔法です。
giveEquipment(10289)
speak("主人公の初期Lvは4です。")
speak("目の前の敵を倒して10Lvになったらクリアです。\n\nLvアップの桁がランダムになっています。")
def a()
a=0
b=0
speak("戦闘終了後、ランダムで経験値を獲得します。\n\nちなみに負けてもOKです。")
startTurnBattle(8677)
a=a+rand(6)
if a==0
speak("Lvは上がらなかった・・・")
end
if a==1
levelUp()
speak("Lvが1上がった!")
end
if a==2
while b<2
levelUp()
b=b+1
end
speak("Lvが2上がった!")
end
if a==3
while b<3
levelUp()
b=b+3
end
speak("Lvが3上がった!")
end
if a==4
while b<4
levelUp()
b=b+4
end
speak("Lvが4上がった!")
end
if a==5
while b<5
levelUp()
b=b+5
end
speak("Lvが5上がった!")
end
addPlayerHP(999)
addPlayerMP(999)
speak("現在のLv",getLevel())
a=0
b=0
if getLevel()>=10
speak("これで終わります。")
goEnding()
end
endタイトルに書いたように,もっと簡単に書く方法はないですか?
よろしくお願いします。
コメントする
コメントするには、ログインする必要があります。
コメント一覧
なとおとき(投稿日:2012/02/11 10:56,
履歴)
パーティーメンバーレベルアップの関数を使えばいいとおもいま~す
>パーティーメンバーの一人一人で個別にレベルアップ
うーん・・やっぱりそれは別に作るしかないかもです・・
それと、2つ下の事についてですけど、
いちいち自動開始で確認しなくても、
def文でまとめて、敵のスクリプトに入れれば大丈夫ですよ!(たぶん・・)
こうすればもっといいと思いますw
うーん・・やっぱりそれは別に作るしかないかもです・・
それと、2つ下の事についてですけど、
いちいち自動開始で確認しなくても、
def文でまとめて、敵のスクリプトに入れれば大丈夫ですよ!(たぶん・・)
#開始スクリプト
setVariable("経験値",0)
c=10
def lvup()
if c<=getVariable("経験値")
levelUp()
speak("Lvが上がった!")
setVariable("経験値",getVariable("経験値"))=0
c+2
end
if getlevel==10
#技を取得
end
if getlevel==20
#技を取得
end
if getlevel==20
#技を取得
end
・
・
・
end#敵のイベント
a=0;b=0
startTurnBattle(8677)
a = a + rand(3)+1
while b < a
setVariable("経験値",getVariable("経験値")+1)
b = b + 1
end
a=0;b=0
lvup()こうすればもっといいと思いますw
長文回答ありがとうございます。
う~ん・・・
簡潔なikosamiさんの案を使ってみることにします。
これ本当は経験値制レベルアップにしようと思っているのですが、
setVariable("経験値",0)で、経験値制にして、
例えば、5から6になるときは10P必要で、
6から7になるときは12P必要のように、
すこしずつ増えるようにするにはどうしたらいいですか?
自分の考え↓
もっとこうするといいよというのがあったら教えて下さい。
う~ん・・・
簡潔なikosamiさんの案を使ってみることにします。
これ本当は経験値制レベルアップにしようと思っているのですが、
setVariable("経験値",0)で、経験値制にして、
例えば、5から6になるときは10P必要で、
6から7になるときは12P必要のように、
すこしずつ増えるようにするにはどうしたらいいですか?
自分の考え↓
#開始スクリプト
setVariable("経験値",0)
c=10#敵のイベント
a=0;b=0
startTurnBattle(8677)
a = a + rand(3)+1
while b < a
setVariable("経験値",getVariable("経験値")+1)
b = b + 1
end
a=0;b=0
setFlag("Lv",ture)#自動開始イベント,発生条件はgetFlag("経験値")
setFlag("Lv",false)
if c<=getVariable("経験値")
levelUp()
speak("Lvが上がった!")
setVariable("経験値",getVariable("経験値"))=0
c+2
end
if getlevel==10
#技を取得
end
if getlevel==20
#技を取得
end
if getlevel==20
#技を取得
end
・
・
・もっとこうするといいよというのがあったら教えて下さい。
こんどこそこれ。
システムはこれでいいはず!
命をかけて!
システムはこれでいいはず!
命をかけて!
giveEquipment(10289)
speak("主人公の初期Lvは4です。")
speak("目の前の敵を倒して10Lvになったらクリアです。\n\nLvアップの桁がランダムになっています。")
setVariable("a", 0)
setVariable("b", 0)
speak("戦闘終了後、ランダムで経験値を獲得します。\n\nちなみに負けてもOKです。")
startTurnBattle(8677)
a = rand(6)
if a==0
speak("Lvは上がらなかった・・・")
elsif a==1
setVariable("a", getVariable("a")+1)
while getVariable("b") > 1
levelUp()
setVariable("a", getVariable("a")-1)
end
speak("Lvが1上がった!")
elsif a==2
setVariable("a", getVariable("a")+2)
while getVariable("b") < getVariable("a")
levelUp()
setVariable("a", getVariable("a")-1)
end
speak("Lvが2上がった!")
elsif a==3
setVariable("a", getVariable("a")+3)
while getVariable("b") < getVariable("a")
levelUp()
setVariable("a", getVariable("a")-1)
end
speak("Lvが3上がった!")
elsif a==4
setVariable("a", getVariable("a")+4)
while getVariable("b") < getVariable("a")
levelUp()
setVariable("a", getVariable("a")-1)
end
speak("Lvが4上がった!")
elsif a==5
setVariable("a", getVariable("a")+5)
while getVariable("b") < getVariable("a")
levelUp()
setVariable("a", getVariable("a")-1)
end
speak("Lvが5上がった!")
end
addPlayerHP(999)
addPlayerMP(999)
speak("現在のLv",getLevel())
setVariable("a", 0)
setVariable("b", 0)
if getLevel()>=10
speak("これで終わります。")
goEnding()
end
あ、こっちだった長文すみません^^;
間違ってれば参考程度に
間違ってれば参考程度に
giveEquipment(10289)
speak("主人公の初期Lvは4です。")
speak("目の前の敵を倒して10Lvになったらクリアです。\n\nLvアップの桁がランダムになっています。")
setVariable("a", 0)
setVariable("b", 0)
speak("戦闘終了後、ランダムで経験値を獲得します。\n\nちなみに負けてもOKです。")
startTurnBattle(8677)
a = rand(6)
if a==0
speak("Lvは上がらなかった・・・")
elsif a==1
while getVariable("b") < 1
levelUp()
setVariable("b", getVariable("b")+1)
speak("Lvが1上がった!")
end
elsif a==2
while getVariable("b") < 2
levelUp()
setVariable("b", getVariable("b")+2)
speak("Lvが2上がった!")
end
elsif a==3
while getVariable("b") < 3
levelUp()
setVariable("b", getVariable("b")+3)
speak("Lvが3上がった!")
end
elsif a==4
while getVariable("b") < 4
levelUp()
setVariable("b", getVariable("b")+4)
speak("Lvが4上がった!")
end
elsif a==5
while getVariable("b") < 5
levelUp()
setVariable("b", getVariable("b")+5)
speak("Lvが5上がった!")
end
end
addPlayerHP(999)
addPlayerMP(999)
speak("現在のLv",getLevel())
setVariable("a", 0)
setVariable("b", 0)
if getLevel()>=10
speak("これで終わります。")
goEnding()
endgiveEquipment(10289)
speak("主人公の初期Lvは4です。")
speak("目の前の敵を倒して10Lvになったらクリアです。\n\nLvアップの桁がランダムになっています。")
setVariable("a", 0)
setVariable("b", 0)
speak("戦闘終了後、ランダムで経験値を獲得します。\n\nちなみに負けてもOKです。")
startTurnBattle(8677)
a = rand(6)
if a==0
speak("Lvは上がらなかった・・・")
elsif a==1
while getVariable("b") < 1
levelUp()
getVariable("b")=getVariable("b")+1
speak("Lvが1上がった!")
end
elsif a==2
while getVariable("b") < 2
levelUp()
getVariable("b")=getVariable("b")+2
speak("Lvが2上がった!")
end
elsif a==3
while getVariable("b") < 3
levelUp()
getVariable("b")=getVariable("b")+3
speak("Lvが3上がった!")
end
elsif a==4
while getVariable("b") < 4
levelUp()
getVariable("b")=getVariable("b")+4
speak("Lvが4上がった!")
end
elsif a==5
while getVariable("b") < 5
levelUp()
getVariable("b")=getVariable("b")+5
speak("Lvが5上がった!")
end
end
addPlayerHP(999)
addPlayerMP(999)
speak("現在のLv",getLevel())
getVariable("a") = 0
getVariable("b") = 0
if getLevel()>=10
speak("これで終わります。")
goEnding()
endこれでエラーでなければ...
giveEquipment(10289)
speak("主人公の初期Lvは4です。")
speak("目の前の敵を倒して10Lvになったらクリアです。\n\nLvアップの桁がランダムになっています。")
def a()
a = 0; b = 0
speak("戦闘終了後、ランダムで経験値を獲得します。\n\nちなみに負けてもOKです。")
startTurnBattle(8677)
a = a + rand(6)
if a==0
speak("Lvは上がらなかった・・・")
else
while b < a
levelUp()
b = b + 1
end
speak("Lvが",b,"上がった!")
end
addPlayerHP(999)
addPlayerMP(999)
speak("現在のLv",getLevel())
if getLevel() >= 10
speak("これで終わります。")
goEnding()
end
end
こうだと思いますが、これって、a()を何度か繰り返すんですよね?