ユニティちゃん迷路(試作品)にツイート機能などを付けました

シェアする

  • このエントリーをはてなブックマークに追加

こんばんは。

昨日に引き続き、ユニティちゃん迷路(試作品)です。

本日は、「難易度変化」「タイマー」「ツイート」の機能を追加しました。

今回は、タイマー更新を頻繁に行ったせいか、WebGLでは負荷がきつすぎてカクカクしてしまうので、スタンドアロン(.exe形式)にしました。下のリンクをPCでクリックしてダウンロードし、解凍してください。

Unity-chan-Maze.zip ※音量注意!

ユニティちゃん:© Unity Technologies Japan/UCL)

解凍したら、Unity-chan-Maze.exeというファイルとUnity-chan-Maze_Dataというフォルダができます。この.exeとデータフォルダの位置関係を変えないように(DLしたままの状態で).exeファイルをダブルクリックして実行してください。

セキュリティ確認が入るかもしれませんが、何も悪いことはしないソフトなので、許可していただいて問題ありません。

開始時に大きさなどの設定画面が出るかもしれないですが、Windowedにチェックを入れていただければ大丈夫です(入れなくても大丈夫ですが、大きすぎるとプレイしにくいです)。

操作方法は、矢印キーの左右で方向操作、上下で前進・後退です。

ゴールはピンクの床で、踏むと音が鳴って、1秒後に次のステージへ移り、BGMが変わり、ステージのサイズが大きくなります。

ステージは3段階あります。3つめをクリアすると、タイマー・BGMが停止して、ツイート画面がブラウザから開かれます。

ツイート画面ではクリア時間とハッシュタグが記載されています。

タイマーのフォントはOswaldFontというフリーフォントを使用しています。

参考書籍:

難易度・コツ

第3ステージは結構難しいです。

この規模の迷路が生成されます↓

迷路生成アルゴリズムの特徴として、「スタートとゴールは対角に配置される」「ループは無い」「壁の厚さは必ず1ブロック分」というものがあるので、これらを意識し、マップ全体を想像しながら移動すると良いと思います。

空間把握能力とやらが要求されるかもしれません。

技術的な話

迷路はMazeオブジェクトのStart()で構築せず、MazeのmazeCreate(int, int)で構築するようにしました。引数は必ず正の奇数である必要がありますが、特にチェックは無し。

Time.timeでゲーム開始からの秒数(float)が取得できるので、GameManagerのStart()でfloat startTimeにセットし、Update()で毎回経過時間を計算(現在時刻との差分)。ゲームが進行中(GameManagerのbool IsRunningがtrue)なら、表示しているテキストを変更します。

ツイートは、http://twitter.com/intent/tweet?text=...のURLを開くだけです。画像ツイートはしたいけどできない(WebGLでやろうとするとアプリケーションの登録が必要?)。

今後の発展としては、Android対応などを考えています。仮想ジョイスティックの追加ですね。

それでは今日はこの辺で。では。

スポンサーリンク
レクタングル(大)
レクタングル(大)

シェアする

  • このエントリーをはてなブックマークに追加

フォローする