🌸 「なでしこ」
>
🍯 「貯蔵庫」
ありふれたアドベンチャーゲーム
🌟新規
📒一覧
🔌
🔍検索
🚪ログイン
ありふれたアドベンチャーゲーム 📖
0を入力で強制終了 テキストが表示されるだけのありふれたアドベンチャーゲーム。ぜひ自分なりのアドベンチャーゲームに改造してみてください。
プログラム:
(→大)
/*! * Meatwo's Common Adventure Game v1.03 */ /* * * [!]注意: 以下ネタバレあり[!] * */ /* * * [!]注意: 以下ネタバレあり[!] * */ # 定数の定義 定数 [終了_クリア, 終了_強制終了, 終了_ゲームオーバー, 終了_無限ループ] = [0, -1, -2, -3] # アイテムなどのフラグ 小屋鍵=いいえ。 ログイン成功=いいえ。 # ストーリー定義に必要な関数の定義 関数 (テキストが)メッセージとは テキストと言う。 テキストを表示。 テキストを戻す。 。。。 関数 (理由で)ゲームオーバーとは 「」を表示。 「ゲームオーバー。 タヒ因: {理由}」がメッセージ。 終了_ゲームオーバーを戻す。 。。。 関数 (配列が)選択肢とは もし、((配列の配列要素数)<1)または((配列の配列要素数)>9)ならば 「選択肢は1以上9以下の要素数である必要があります」でエラー発生。 。。。 変数 表示tmp=「どうする? 」。 配列を反復 表示tmpに「 {対象キー+1}: {対象[0]}」を一行追加して表示tmpに代入。 。。。 変数 入力数値=0 ((入力数値をNAN判定)||入力数値>(配列の配列要素数)||入力数値<1)の間繰り返す 表示tmpと尋ねる。 それを整数変換して入力数値に代入。 もし、入力数値=0ならば、終了_強制終了を戻す。 。。。 表示tmpに「 {入力数値}を選択。」を一行追加して、表示tmpに代入。 表示tmpがメッセージ。 配列[入力数値-1][1]を戻す。 。。。 #ストーリー部分の関数定義 家=undefined。#未定義エラーを防ぐため 机=undefined。 パソコン=undefined。 パソコンログイン=undefined。 外=undefined。 木=undefined。 ボタン1=undefined。 ボタン2=undefined。 ボタン3=undefined。 湖=undefined。 釣り=undefined。 小屋前=undefined。 小屋こじ開け=undefined。 小屋中=undefined。 シークレット1=undefined。 シークレット2=undefined。 シークレット3=undefined。 家=関数() 「あなたは家のなかにいる。」がメッセージ。 「椅子と机があり、机の上にはパソコンがある。」がメッセージ。 「ドアからは外に出られるようだ。」がメッセージ [[「机の前の椅子に座る」、机]、[「ドアから外に出る」、外]]が選択肢。 。。。 机=関数() 「椅子に座った。」がメッセージ。 「机の上にはパソコンがある。」がメッセージ。 [[「ここから戻る」、家]、[「パソコンを起動する」、パソコン]]が選択肢。 。。。 パソコン=関数() もし、(ログイン成功=はい)ならば、 「パソコンの電源ボタンを押した。」がメッセージ。 「...」がメッセージ。 「...しかし、起動しない。」がメッセージ。 [[「戻る」、家]]が選択肢。 違えば、 「パソコンの電源を入れた。」がメッセージ。 「...」がメッセージ。 「......」がメッセージ。 「パソコンが起動した。」がメッセージ。 「パスワードが必要なようだ。」がメッセージ。 「パスワード: 」と尋ねる。 変数 入力されたパスワード=それ。 「パスワード: {入力されたパスワードを小文字変換}」と表示する。 もし、(入力されたパスワードを小文字変換=="rpg")ならば、 パソコンログインを戻す。 違えば、 「『パスワードが違います』」がメッセージ。 「パソコンの画面が強烈な青い光を放つ。」がメッセージ。 「なぜか体が動かない。」がメッセージ。 「あなたは光をもろに浴びる。」がメッセージ。 「意識が遠のく...」がメッセージ。 「ブルーライト」でゲームオーバー。 。。。 。。。 。。。 外=関数() 「ドアから外に出た。」がメッセージ。 「大木と湖がある。」がメッセージ。 [[「ドアから家に戻る」、家]、[「大木へ行く」、木]、[「湖へ行く」、湖]]が選択肢。 。。。 木=関数() 「木のそばに近づいた。」がメッセージ。 「木の根元には赤いボタンのようなものがある。」がメッセージ。 [[「家の前に戻る」、外]、[「ボタンを押す」、ボタン1]]が選択肢。 。。。 ボタン1=関数() 「ボタンを押した。」がメッセージ。 「...」がメッセージ。 「......」がメッセージ。 「.........何も起きないようだ。」がメッセージ。 [[「家の前に戻る」、外]、[「もう一度ボタンを押す」、ボタン2]]が選択肢。 。。。 ボタン2=関数() 「もう一度ボタンを押した。」がメッセージ。 もし、(小屋鍵=はい)ならば、 「...」がメッセージ。 「......」がメッセージ。 「.........何も起きないようだ。」がメッセージ。 違えば、 「すると、ボタンの横から銀色の鍵が出てきた。」がメッセージ。 「あなたはそれを拾った。」がメッセージ。 小屋鍵=はい。 。。。 [[「家の前に戻る」、外]、[「さらにボタンを押す」、ボタン3]]が選択肢。 。。。 ボタン3=関数() 「さらにボタンを押した。」がメッセージ。 「...」がメッセージ。 「突然地面が揺れ出した。」がメッセージ。 「周りを見渡すと、地面に亀裂が広がっていく。」がメッセージ。 「そしてあなたは亀裂に飲み込まれた...」がメッセージ。 「地球崩壊ボタン」でゲームオーバー。 。。。 湖=関数() 「湖に行った。」がメッセージ。 「誰かが忘れていったかのように、釣り竿や釣り具が置いてある。」がメッセージ。 「近くには小さな小屋がある。」がメッセージ。 [[「家の前に戻る」、外]、[「釣りをする」、釣り]、[「小屋に行く」、小屋前]]が選択肢。 。。。 釣り=関数() 「釣りをすることにした。」がメッセージ。 「...」がメッセージ。 「......」がメッセージ。 「...!!」がメッセージ。 「竿が大きくしなるとともに、あなたは湖に引っ張られる。」がメッセージ。 「そのままあなたは深い湖に沈んでいった...」がメッセージ。 「湖の怪物」でゲームオーバー。 。。。 小屋前=関数() 「小屋の前に行った。」がメッセージ。 「小屋のドアには鍵がかかっている。」がメッセージ。 もし、(小屋鍵=はい)ならば、 もし、(ログイン成功=はい)ならば、 [[「湖に戻る」、湖]、[「???」、シークレット1]]が選択肢。 違えば、 [[「湖に戻る」、湖]、[「鍵でドアを開ける」、小屋中]]が選択肢。 。。。 違えば、 [[「湖に戻る」、湖]、[「ドアをこじ開ける」、小屋こじ開け]]が選択肢。 。。。 。。。 小屋こじ開け=関数() 「小屋のドアを開けようとした。」がメッセージ。 「突然、何者かに背後から後頭部を殴られた。」がメッセージ。 「あなたはそのまま倒れ込んだ。」がメッセージ。 「意識が遠のく...」がメッセージ。 「バット」でゲームオーバー。 。。。 小屋中=関数() 「小屋の鍵を開けて、中に入った。」がメッセージ。 「突然鈍器のようなもので後頭部を殴られた。」がメッセージ。 「意識が遠のいていく...」がメッセージ。 「...」がメッセージ。 「......」がメッセージ。 「.........」がメッセージ。 「...あなたは目を覚ました。」がメッセージ。 「まだ頭がくらくらする。」がメッセージ。 「...なにか異変を感じる。」がメッセージ。 「近くの鏡に映る自分の姿を見た。」がメッセージ。 「自分の服装はRPGの勇者のようだ。」がメッセージ。 「そして何故かあなたは剣を持っているのに気づいた。」がメッセージ。 「......」がメッセージ。 「どうやらあなたは勇者に生まれ変わったようだ...」がメッセージ。 「??? パスワード: RPG」でゲームオーバー。 。。。 パソコンログイン=関数() ログイン成功=はい。 「『ログイン...』と表示されている。」がメッセージ。 「...なぜパスワードがわかったのだろうか。」 「そう考えているうちに、パソコンではデスクトップが表示される。」がメッセージ。 「デスクトップはシンプルで、アプリが1つ表示されているだけだ。」がメッセージ。 「あなたはそのアプリを開いた。」がメッセージ。 「真っ黒なコンソールが開く。」がメッセージ。 「小さな白い文字で、『小屋の周りには気を付けろ』と書かれている。」がメッセージ。 「...どういう意味か理解できない。」がメッセージ。 「あなたはそのアプリを閉じ、パソコンの電源を落とした。」がメッセージ。 [[「戻る」、家]]が選択肢。 。。。 シークレット1=関数() 「何者かの気配を感じる。」がメッセージ。 「警戒しながら、ドアを開ける。」がメッセージ。 「後ろに気配を感じ、とっさにしゃがむ。」がメッセージ。 「何者かがバットで攻撃したが、間一髪でかわした。」がメッセージ。 「背後にいる男の腹に思い切りパンチする。」がメッセージ。 「男はうめき声をあげて倒れ込んだ。」がメッセージ。 「...男は気絶したようだ。」がメッセージ。 「男は金色の鍵を落とした。」がメッセージ。 「あなたは鍵をポケットに入れた。」がメッセージ。 [[「小屋に入る」、シークレット2]]が選択肢。 。。。 シークレット2=関数() 「あなたは小屋に入った。」がメッセージ。 「小屋には小さな鏡があった。」がメッセージ。 「そして、クローゼットにはRPGの勇者のような服があった。」がメッセージ。 「しかし、それ以外には何もなかった。」がメッセージ。 [[「小屋の周りを探索する」、シークレット3]]が選択肢。 。。。 シークレット3=関数() 「小屋の周りを探索すると、小さな鍵穴が見つかった。」がメッセージ。 「あなたは男が落とした金色の鍵を鍵穴に差し込んだ。」がメッセージ。 「しかし、鍵は開かない。」がメッセージ。 「仕方なく鍵穴から鍵を抜いた。」がメッセージ。 「すると、なにか装置が動いたのか、ディスプレイが壁から現れた。」がメッセージ。 「そこには、大木の根元にある赤いボタンがうつっていた。」がメッセージ。 「そして、その画面には、あの男がボタンを押す様子が映っていた。」がメッセージ。 「地面が揺れ、亀裂が広がっていく...」がメッセージ。 終了_クリアを戻す。 。。。 #実行 next=家。 旧next=undefined。 ((next<=0)の論理NOT)の間繰り返す 旧nextにnextを代入。 nextを実行してnextに代入。 もし、(旧next===next)ならば、 nextに終了_無限ループを代入。 #永久ループ防止 。。。 。。。 もし、(next=終了_強制終了)ならば、 #ユーザーによる強制終了 「強制終了しました」がメッセージ。 違えば、もし、(next=終了_無限ループ)ならば、 #このエラーが出たら、選択肢や関数の定義などが間違っています。 「無限ループ防止のため強制終了しました。」がメッセージ。 違えば、もし、(next=終了_クリア)ならば、 #クリアメッセージ 「」を表示。 「ゲームオーバー? タヒ因: 男は何者?」がメッセージ。 「ゲームクリア! おめでとうございます!」がメッセージ。 。。。
プログラムを実行
Meatwo 作
タイトル:
ありふれたアドベンチャーゲーム
ライセンス:
CC0 (著作権破棄)
タイプ:
wnako
タグ:
-
利用バージョン:
3.2.25
作成日時:
2021/09/17 22:52 (編集: 2021/12/25 16:51)
公開の投稿
⭐⭐
ログイン
して★を付けよう!
📝作品を編集
作品公開情報
📍この作品のURL:
📍アプリ(即時実行)のURL:
📍アプリ(実行ボタンあり)のURL:
📍ブログパーツ:
上記HTML↑をブログに貼り付けることでアプリを埋め込めます。
📍ライブラリ直リンク - 『!「***」を取込』で使うとき:
📍なでしこハブ (最新版の反映は1日後):
ソースの確認
編集履歴の確認
通報数:
0
通報って何?