マガジンのカバー画像

3Dローグライクゲームの作り方

110
Unityを使用した3Dのローグライクの作り方についてまとめています。
運営しているクリエイター

記事一覧

【Unity】3Dローグライクゲームの作り方〜Step14-13〜

【Unity】3Dローグライクゲームの作り方〜Step14-13〜

前回の記事はこちら。
前回はアイテム合成レシピを作成したりしました。

正しいアイテムを合成した時アイテムを入手するそれでは前回の続きから行っていきます。
まずInventoryクラスの以下のメソッドを変更します。

public void Sort(){ System.Comparison<Item> s = (a, b) => { int i = isSort ? -1 :

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-12〜

【Unity】3Dローグライクゲームの作り方〜Step14-12〜

前回の記事はこちら。
前回はアイテム合成スロットにアイテムを入れたりしました。

スロットに入れられるものを制限するさて、前回はスロットに何でも入れられる状態になっていましたが、これを改善します。
CocktailWindowActionクラスを変更して下さい。

// パラメーターを追記public int itemNum = 3;public int stoneNum = 1;// メソッドを

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-11〜

【Unity】3Dローグライクゲームの作り方〜Step14-11〜

前回の記事はこちら。
前回は拠点セーブを実装しました。

アイテム合成ウィンドウ宿屋の実装が一応終わったので、次は酒場の仕様を決めたいと思います。
酒場でできることは今の所以下の予定です。

・アイテム合成
・情報収集(予定)

情報収集の方はひとまず置いておきましょう。
アイテムの合成方法は以下を考えています。

・一つの合成につき魔石を一つ使う
・一度に合成できるアイテムは3つまで
・合成レシ

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-10〜

【Unity】3Dローグライクゲームの作り方〜Step14-10〜

前回の記事はこちら。
前回はコインの預け出しを実装しました。

拠点セーブ-プレイヤー位置の保存それでは拠点セーブできるようにしましょう。
まず最初にSaveDataManagerクラスを以下のように変更して下さい。

// 新しいパラメーターを追加public bool isDungeon = true;// メソッドを変更private void Save(){ saveData.play

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-9〜

【Unity】3Dローグライクゲームの作り方〜Step14-9〜

前回の記事はこちら。
前回は倉庫インベントリのソート機能実装などを行いました。

コインを預けたり引き出せるようにする今回はコインを預けたり、引き出せるようにするところからコードを書いていきたいと思います。
WareHouseMoneyActionクラスを変更して下さい。

// メソッドを追加/*** コインを預け出しする*/private void DepositAndWithdraw(){

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-8〜

【Unity】3Dローグライクゲームの作り方〜Step14-8〜

前回の記事はこちら。
前回は倉庫インベントリのアイテムを入れたり出したりしました。

倉庫内のアイテムをソートする今回は倉庫内のアイテムをソートするところから始めたいと思います。
今回の仕様はソートキーを押すとWeaponから順に前に出てくるアイテムの種類が変わるというものです。その他は普通のインベントリソートと同じです。
早速行なっていきましょう。まずはソートキーを定義するのを忘れていたのでKe

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-7〜

【Unity】3Dローグライクゲームの作り方〜Step14-7〜

前回の記事はこちら。
前回は倉庫インベントリのアイテムを表示しました。

アイテムを入れる処理今回はアイテムを入れる処理からコードを書いていきたいと思います。
倉庫の空いているスロットを選択するとインベントリが表示され、アイテムを選択できるようにします。
まずはInventoryクラスを変更します。

// メソッドを追加/*** アイテムをインベントリの指定位置に加える*/public bool

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-6〜

【Unity】3Dローグライクゲームの作り方〜Step14-6〜

前回の記事はこちら。
前回は倉庫の外形を作成しました。

倉庫の中身を表示する今回は実際に倉庫の中身を表示するところから始めたいと思います。
「WareHouseDisplay」スクリプトを作成して下さい。そこに以下を記述します。

using UnityEngine;using UnityEngine.UI;public class WareHouseDisplay : MonoBehaviou

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-5〜

【Unity】3Dローグライクゲームの作り方〜Step14-5〜

前回の記事はこちら。
前回はアイテムを買えるようにしました。

倉庫ウィンドウショップの実装が一通り終わったので、次は倉庫を実装したいと思います。
今回の仕様は以下の通り。

・入れられるのは魔石以外のアイテムとコイン
・ダンジョン内で倒れても倉庫内のアイテムは残る
・アイテムは最大20〜50個程度入れられる(ゲーム進行度具合で変動)
・コインはほぼ無制限
・ソート機能

ただ、倉庫を実装するのに

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-4〜

【Unity】3Dローグライクゲームの作り方〜Step14-4〜

前回の記事はこちら。
前回はアイテムを売れるようにしました。

所持コインの表示買う処理を実装する前に、所持コインをショップメニューに表示したいと思います。
まずテキストオブジェクトを所持コインの表示したい位置に配置します。
次にShopActionクラスに追記します。

// パラメーターを追記public UnityEngine.UI.Text playerMoney;// メソッド内に追記p

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-3〜

【Unity】3Dローグライクゲームの作り方〜Step14-3〜

前回の記事はこちら。
前回はショップメニュー画面を作成しました。

(オプション)店員を配置する場合もし店員に話しかけたらプレイヤーに振り向くようにする場合、次のようにすればOKです。

// パラメーターを追加public ItemInventory playerInventory;// メソッドを変更private void MoveBegin(){ isOpen = !isOpen;

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-2〜

【Unity】3Dローグライクゲームの作り方〜Step14-2〜

前回の記事はこちら。
前回は拠点を作成しました。

売値の項目を追加ExcelItemDataファイルにpriceの項目を追加します。

多すぎるので一部抜粋しています。
データを取り込む前にItemクラスに追記します。

public class ItemData{ // パラメーターの追加 public int price; public ItemData Copy() {

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step14-1〜

【Unity】3Dローグライクゲームの作り方〜Step14-1〜

前回の記事はこちら。
前回はゲームオーバー画面などを実装しました。

本ステップの予定さて、本ステップでは主にお店や拠点を実装していきたいと思っています。
大体思いつく拠点内施設は以下の通りです。

・ショップ(コマンドで売買)
・倉庫
・アイテム合成屋
・宿屋
・クエスト受注場所(ギルドなど)
・情報収集場(民家や酒場など)

一応上から順に実装する可能性の高いものとなっております。
恐らくアイ

もっとみる
【Unity】3Dローグライクゲームの作り方〜Step11-23〜

【Unity】3Dローグライクゲームの作り方〜Step11-23〜

前回の記事はこちら。
前回は中断セーブ機能などを作成しました。

スタート時一時保存のデータがあったらこの時はデータを削除して一から開始したいと思います。
データ削除前に確認画面があった方がいいですね。
ということでそのように実装します。まずは外形から。

スクリプトを書いていきます。まずSaveDataManagerクラスにメソッドを追加して下さい。

/*** 中断データを削除する*/publ

もっとみる