本リポジトリは、タイルラボというパズルゲームを実装するためのUnity用ファイル群です。
①Unity6の環境をPC上に作り、Unity Hubから扱えるようにする。 ②GitHubからリポジトリをクローン(ダウンロード)し、どこかにフォルダとして作る。 ③Unity HubのAddからAdd diskを選び、クローンしたリポジトリを選択。 ④Unity Hubから起動
パズルを複数個含んでいる。 1つのパズルをクリアすると、次のパズルを遊べる。全てのパズルをクリアすると、ステージクリア。
タイルを複数個含んでいる。 タイルを組み合わせ、指示されたゴールを全て
ファイル概要 ほとんどの主要要素はAssetsの中に入っているので、Assets以下のファイルのみ説明します。
Unityエンジンが実装している"シーン"が入っている。
エントリーポイントとしてのシーン。 ここからTitleシーンが起動する。
文字通りタイトルを表記するシーン。 現在は実装していないが、ここで「モノクロモード」「カラーモード」「工場モード」を選択する。
ステージを選択するシーン。 ここで選んだ数値を元に、Stageシーンが立ち上がる。
現在はPuzzleという名前になっているが、今後Stageに変更する可能性有り。 指定された.csvファイルからステージ情報を読み込み、ゲームプレイ環境を提供する。
画像、プレハブ(クラス的なGameObject)を保管する場所。基本的にこの中は弄らない。
全プログラムを入れているフォルダ。
Mainシーン及び、シーン遷移用のスクリプトを入れている。 Titleシーン用の処理も含んでいる。
Titleシーンを開くためのもの。編集は不要。
シーン遷移を担っている。 ここにあるメソッド以外から遷移することのないように。 「ステージボタン」や「戻るボタン」などにアタッチする。
Stage_selectシーン用のスクリプト群。
ステージ選択画面の情報をstage.csvから読み込み、ブロック状で表示するスクリプト。 生成されたブロックはstageの名前を持つGameObjectの形式になっており、それぞれStageClickHandler.csがアタッチされている。
ステージ選択画面のボタンの役割を持つスクリプト。 ここから、mainのChange_scene.csを呼び出してステージを起動する。
ここの比重が最も重い。パズルのゲームそのものを構成している。
ステージを起動するためのもの。
Stageという名前の空GameObjectにアタッチされている。 .csvファイルを読み込み、puzzleプレハブ、tileプレハブからインスタンスを生成する。
Stageという名前の空GameObjectにアタッチされている。 起動しているpuzzleに従ってUIを構成する。 UiCanvas、InventoryField、GoalFieldのUIを操作するためのもの。
puzzleプレハブにアタッチされている。 中間処理を行っているため、TileManagerに数値を受け渡すような処理が多い。
puzzleにアタッチされている。 タイルが配置されている場所を管理するためのもの。 同じ座標には二つのタイルが入らない。 が、Outputタイルのみ例外で、上からGateタイルを入れられる。 座標とタイルは辞書で保存されている。 (keyがVector2Int、valueがTileManager)
タイル1つにアタッチされている。 タイルの種類にはInput、Gate、Goal、Outputがある。 それぞれの種類のタイルによって使用するメソッドが異なる。
タイルをドラッグアンドドロップするためのスクリプト。
csvファイルで構成されたステージデータが入っている。