脱出ゲーム 作り方(質問掲示板

投稿: User icon mini 退会したユーザー 投稿:2012/09/29 20:39:29(最新:2012/10/01 12:16:01)
僕はいま脱出ゲームを作っています。そこで、
一つ目・例えば、
棒がある→その棒を使って高いところにあるカギをとった→そのカギでタンスを開けた→・・・
のようにするにはどうすればいいですか?
二つ目・例えば、
窯がある、紙をあぶりたい。というわけで、火と木を使う。
のように一つのイベントに2つや3つアイテムを使うにはどうすればいいですか?
三つ目・パスワードを入力できるようにするにはどうすればいいですか?

これくらいです。たくさんの質問ですが、できるだけ回答お願いします。

コメントする

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

コメント一覧

Nyan mini rurun9(投稿日:2012/10/01 12:16, 履歴)
ハイ。一旦ゲーム作成は休憩しましょー

新人さんですね?
スクリプトの書き方やらの基本を知らないと何を説明しても全く進まないと思うので、いつもの誘導から。

その他/困ったときに(lv.0
ノウハウ/トップページ
スクリプト/はじめてのRmakeスクリプト / 第01回 変数と数値をマスターしよう
スクリプト/つくってみよう0
Material 110912 1 mini アイネ・レグルス(投稿日:2012/09/29 21:11, 履歴)
編集中に先に書かれた…

えっと、1つ目はこちらの掲示板にいてありますよ^^
2つ目も同じ方法かな

ゴシプリでも使用したのですが、3つ目は数字でやりたい場合は
setSelectWindowRect(400, 50, 50, 350)

a=createArray()
b=createArray()
c=4 #桁数
p=1234 #パスワード

n=0 #aに(選択肢の)0~9を入れる
while n<10
 a[n]=n
n=n+1
end

n=0
while n<c
 b[n]=speakWithSelectArray(a,"どう入力する?",b)
n=n+1
end

n = 0
d = 0
while n < c
d = d * 10
d = d + b[n]
n = n + 1
end

if d == p
  speak("扉が開いた!")

else
 speak("間違っていたようだ…")
end


とやるとできます。

そのほかにも以下の方法があります
http://rmake.jp/boards/2/topics/932
http://page.rmake.jp/wikis/56

頑張ってくださいね^^
User icon mini 退会したユーザー(投稿日:2012/09/29 21:33, 履歴)
えっとー、一つ目の掲示板見ていたんですが、rurun9さんの回答を使わせていただいたんですが、
たとえば棒をカギに使います。そしてまた鍵の場所に行ったら普通は、もう何もないとなるはずです。
でも使わせていただいたものは、棒をカギに使った後にもう一度棒の場所に行ったら、またまたゲットしていたんです。そこはなんとかできないでしょうか?
Material 110912 1 mini アイネ・レグルス(投稿日:2012/09/29 22:14, 履歴)
それはおそらくイベントワープ関数を使えば上手くいくと思います
ただし、ちょっと難しいですよ

if !getFlag("a") #falseつまり持ってない場合
 setFlag("a",true)
 giveItem(アイテムaのID)
 playSound(92831)
 speak("アイテムaを見つけた")
warpEvent("棒イベント", 1, 1)
else #trueつまり持っている場合
 speak("特に変わった所はない")
end


この時、イベント名を[棒イベント]に変更してください





また、下写真の鉛筆マークの下にある白いマスのあるところは通行可能にして、そこにはイベントを置かないでください

移動したイベントをもう一度調べられなくするために、移動したイベントのマスの周りに通行不可に設定したイベントを敷き詰めればいはずです
設定は下写真の通りです。なお、このイベントの実行内容はかかなくてОKです



敷き詰め方はこんな感じで


(赤マス=移動したイベント 白マス=通行不可のイベント)
なお、通行不可のイベントは普通のイベントと操作は同じです

わかりにくかったらごめんなさい><
Cdv30200 aoi icon mini aoihikawa(投稿日:2012/09/30 10:53, 履歴)
再度入手できてしまったのは、
アイテムを所持しているかどうかで
判定していたためかと思います。


アイネさんのとおり、
アイテムを使用した後のところで
入手イベント自体の場所を移動してしまうか、

使用したかどうかというフラグを立て
そのフラグによって入手できないようにする
という方法があります。
User icon mini 退会したユーザー(投稿日:2012/09/30 15:14, 履歴)
使用したかどうかというフラグを立て
そのフラグによって入手できないようにする
という方法についての情報をお願いします。
Cdv30200 aoi icon mini aoihikawa(投稿日:2012/09/30 15:44, 履歴)
フラグの使用方法については
以前、レスした通りです。


流れとしては

_/_/_/_/_/入手用イベント_/_/_/_/_/

<棒を持っているか>
 はい

 <棒を使用したフラグがOFFか>
  はい
  ・棒を入手

  いいえ
  ・なにも起きない

 いいえ
 ・何も起きない

_/_/_/_/_/障害用イベント_/_/_/_/_/

<棒を持っているか>
 はい
 ・障害の解除
 ・棒を使用したフラグをONにする

 いいえ
 ・何も起きない

といった形にする方法があります。

まずはこういった
フローチャートを自分で作ってみることが
第一歩です。

ここから、必要な処理ごとに
スクリプトを当てはめていきます。
Cdv30200 aoi icon mini aoihikawa(投稿日:2012/09/30 15:45, 履歴)
上側のひとつめの判定、
はいといいえが逆でした。
User icon mini 退会したユーザー(投稿日:2012/09/30 15:11, 履歴)
付け足しで四つ目に聞きたいことがあります。例えば、
タンスがある→タンスをクリック→「何もないようだ」→イベント終了→その後またタンスに行く→タンスをクリック→「何もない・・・と思ったら棒があった」
のように、2回目に違う回答が出てくるようにするにはどうすればいいでしょうか?
できればこれも回答お願いします。
Cdv30200 aoi icon mini aoihikawa(投稿日:2012/09/29 21:08, 履歴)
基本的な仕組みは
鍵で開ける扉イベントの応用です。

複数のアイテムで判定したい場合は
スクリプト言語のマニュアル if文
はじめてのRmakeスクリプト / 第03回 変数とフラグをマスターしよう の通り
if文の条件式に、論理式を使用します
User icon mini 退会したユーザー(投稿日:2012/09/29 21:26, 履歴)
なるほど、こんなページがあったんですね。ありがとうございます。