フラグの使い方(質問掲示板)
投稿:
mrburein
投稿:2015/04/07 20:19:07(最新:2015/04/08 16:11:08)
フラグを使ってイベントを作りたいのですができません
m=getItemIndexWithId(19405)
if m==-1
speak("きみ!\n俺のファンにプレゼントをくれてやってくれないか")
case speakWithSelect(2,"はい","いいえ",
"引き受けますか?")
when 0
getFlag("ファン2")
speak("プレゼントをもらった")
giveItem(19405)
end
else
speak("よろしくね!")
end
when 1
speak("やっぱダメか…")
end
m=getItemIndexWithId(19405)
if m==-1
getFlag("ファン3")
speak("やってくれたのか!\nありがとう!\nハートを2つやる!")
giveItem(19399)
giveItem(19399)
else
ツイート
m=getItemIndexWithId(19405)
if m==-1
speak("きみ!\n俺のファンにプレゼントをくれてやってくれないか")
case speakWithSelect(2,"はい","いいえ",
"引き受けますか?")
when 0
getFlag("ファン2")
speak("プレゼントをもらった")
giveItem(19405)
end
else
speak("よろしくね!")
end
when 1
speak("やっぱダメか…")
end
m=getItemIndexWithId(19405)
if m==-1
getFlag("ファン3")
speak("やってくれたのか!\nありがとう!\nハートを2つやる!")
giveItem(19399)
giveItem(19399)
else
コメントする
コメントするには、ログインする必要があります。
どういう現象が起きたのか書いた方が良いです。
あと、関係するスクリプトはなるべく全部載せることです(^^)
フラグを設定する時にsetFlag関数、
フラグを設定したか確認する時にgetFlag関数を使います。
例えばこんな感じになります。
依頼人
#プレゼントの所持の有無をmで判定 m = getItemIndexWithId(19405) if getFlag("渡す") #プレゼントを渡したとき speak("やってくれたのか!\nありがとう!\nハートを2つやる!") giveItem(19399) giveItem(19399) elsif m == -1 #プレゼントを持っていない speak("きみ!\n俺のファンにプレゼントをくれてやってくれないか") case speakWithSelect(2,"はい","いいえ", "引き受けますか?") when 0 speak("よろしくね!") speak("プレゼントをもらった") giveItem(19405) setFlag("引き受ける", true) when 1 speak("やっぱダメか…") end else #すでにプレゼントを持っている speak("頼んだぞ。") end受取人
m = getItemIndexWithId(19405) if getFlag("渡す") #プレゼントを渡した speak("どうもありがとう!") elsif getFlag("引き受ける") && m != -1 #依頼を受けてプレゼントを持っている speak("わー、プレゼントだ!\nどうもありがとう!") speak("プレゼントを渡した") removeItemWithIndex(m) setFlag("渡す", true) elsif getFlag("引き受ける") && m == -1 #依頼を受けたが、プレゼントを捨てるなどしたため持っていない speak("プレゼント?\n何も持ってないじゃん") elsif !getFlag("引き受ける") && m != -1 #依頼を受けていないがプレゼントは持っている speak("わー、いいなあ\nほしいなあ") else #依頼を受けていないしプレゼントを持っていない speak("こんにちは") endもしプレゼントを渡す前に捨ててしまっても
依頼人にもう一度話せば最初からやり直せます。
スクリプトを載せる場合はRmake記法の「pre 表記(整形済みテキスト)」を参考にして下さい。