短編RPG制作(Unity2D)【第61回】装備その4
装備
購入処理の作成
購入を制御するスクリプトを作成します。
using UnityEngine;
public class BuyWeaponButton : MonoBehaviour
{
private WeaponData weaponData;
private void Start()
{
weaponData = GetComponent<WeaponData>();
}
private void OnClickBuyButton()
{
if ( weaponData.GetValue() <= PlayerParameter.gold )
{
PlayerParameter.gold -= weaponData.GetValue();
weaponData.SetText("装備する");
}
}
}
すぐ終わると思ったのですが、武器のデータもドロップアイテムと同様に「ScriptableObject」として管理したいと思ったら結構な作業に……
まずは型を作成しました。
using UnityEngine;
[CreateAssetMenu(fileName = "Weapon", menuName = "ScriptableObjects/WeaponData")]
public class WeaponData : ScriptableObject
{
[SerializeField] private string weaponName;
[SerializeField] private string text;
[SerializeField] private string buttonText;
[SerializeField] private int id;
[SerializeField] private int value;
[SerializeField] private Sprite icon;
public string GetName()
{
return name;
}
public int GetId()
{
return id;
}
public int GetValue()
{
return value;
}
public string GetButtonText()
{
return buttonText;
}
public void SetText(string ButtonText)
{
this.buttonText = ButtonText;
}
public Sprite GetIcon()
{
return icon;
}
}
この後やることとしては、
各武器のデータ作成
データからUIを自動で作成
購入処理を実装
購入状態の一括管理
要するに、武器のデータを作るだけで全部済むようにしようと思います。
武器を大量に増やすつもりはないので無駄かもしれませんが、勉強がてら整理していきたいと思います。
この記事が気に入ったらサポートをしてみませんか?