Menu
CoddyTech

ショップとインベントリ

CoddyのUnityジャーニー「本格的なゲームを作る」セクションの一部。レッスン 57/60。

レベルの合間に、ヒーローはショップを訪れます。棚にはヘルメット、ブーツ、マントの3つのアイテムが並び、それぞれ価格を表示したボタンが付いています。また、ヒーローがまだ買えないアイテムを買えるように、作業ボタンでコインを獲得できます。ヒーローが購入したものは下部に表示される所持品リストに入り、残ったコインと所持アイテムは、次にゲームを開始したときにもそのまま残っています。

2つのスクリプトを書きましょう。ShopオブジェクトにはShopを、各アイテムのボタンにはShopItemを設定します。

challenge icon

チャレンジ

難しい

ShopとShopItemを作成し、PlayerPrefsで保存します。

  1. Shop:コインはCoinsに保存します(新規プレイヤーの場合:startCoins)。Coins: 100と表示し、「Work」を押すとpayが加算されます。
  2. ShopItem:Owned_Helmetが1の場合、所有済みです。ラベルはHelmet: 40またはHelmet: ownedと表示します。未所有で、購入できる場合にクリック可能にし、クリックすると購入します。
  3. inventoryText:Inventory: Helmet, CapeまたはInventory: emptyと表示します。変更のたびに保存して再描画します。

「プレイ」を押して買い物をし、「停止」を押してからもう一度プレイします。その後、「確認」を押します。

自分で試してみよう

using UnityEngine;
using UnityEngine.UI;
using TMPro;

public class Shop : MonoBehaviour
{
    public int startCoins = 100;
    public int pay = 25;
    public TMP_Text coinsText;
    public TMP_Text inventoryText;
    public Button workButton;
    public ShopItem[] items;
}

本格的なゲームを作るのすべてのレッスン

自分で練習してみよう: Unityプレイグラウンド