[解決済] 鍵が必要(質問掲示板)
投稿: 退会したユーザー
投稿:2017/04/19 17:36:19(最新:2017/04/23 18:10:23)
2DアクションRPGについて。
「鍵がないと開かない」ということをしたいんですが、どのようにしたら良いんでしょうか?
鍵を使う方と、鍵を手に入れる方、出来れば両方教えていただきたいです。よろしくお願いします。
ツイート
「鍵がないと開かない」ということをしたいんですが、どのようにしたら良いんでしょうか?
鍵を使う方と、鍵を手に入れる方、出来れば両方教えていただきたいです。よろしくお願いします。
コメントする
コメントするには、ログインする必要があります。
コメント一覧
こんばんは~!
もう十分だろうけど暇なので載せちゃいます
これも僕のヴァルハラクエストの一部です
もう十分だろうけど暇なので載せちゃいます
これも僕のヴァルハラクエストの一部です
if getFlag("扉21") else #カギを持っていれば変数 m に「持ち物中、何番目のアイテムがカギなのか」が入ります #持っていない場合は m には -1 が入ります m=getItemIndexWithId(18214) if m==-1 else playSound(161964) warpEvent("event72", 8, 80)#扉をどこかみえないところへワープさせます #setFlag("event168", false) #扉キャラを非表示にします #removeItemWithIndex(m) #使用したカギアイテムを消去しています setFlag("扉21", true) end end
退会したユーザー(投稿日:2017/04/20 14:20,
履歴)
ありがとうございます。参考にさせていただきます。
Rmakeでは全てのアイテムは捨てる事が可能です。
それともフラグのみで、アイテム表示無しですか?
getItemIndexWithId関数とremoveItemWithIndex関数を使えば鍵を使用後に消すこともできます。
私もゲームに使っていますよ。
鍵を使う方のスクリプトは後で書きます
鍵を使って開ける扉のイベントのスクリプトを書きました。
有効条件
イベント実行内容
スクリプトが長くなって見にくいので、1行目で getItemIndexWithId(000)をaとします。
getItemIndexWithId関数は、IDで指定した所持アイテムのインデックス(何番目に持っているか)を取得します。
アイテムは最大32個持てるのでaには0〜31が入ります。
(例えば、鍵がアイテム欄の1番上にあれば「0」、5番目にあれば「4」がaに入ります。なんでか知りませんが)
なのでaが「-1」だとアイテム欄のどこにもない、つまり持っていないという事になります。
10行目で、持っている鍵を消去する removeItemWithIndex関数を使います。
ーー補足ーー
これだと、イベント実行内容が全部終わってから扉のイベントが消えます。
「扉が開いた。」のセリフと同時に扉のイベントを消したい場合は、mugaさんのように
warpEvent関数で表示マップの外へすっ飛ばせば良いです。
聞かれたから書いたのに何の反応も無し…
もう二度と答えない