Я пытаюсь создать своего рода базу данных оружия для игры на C#.
Я уже определил свойства, которые должно иметь каждое оружие, поэтому легко добавлять оружие.
Но мне трудно найти способ создать [SerializeField] переменную, которая позволила бы мне выбирать оружие из всего доступного оружия.
Цель состоит в том, чтобы прикрепить этот скрипт к gameObject, с которым игрок может взаимодействовать и «читать» свойства выбранного оружия (выбранного инспектором Unity).
Это мой текущий код для определения оружия:
public class WeaponList : MonoBehaviour
{
public class WeaponProperties
{
public int weaponDamage;
public int weaponMaxAmmo;
public float weaponReloadTime;
public float weaponCadence;
public float weaponLenght;
private string weaponID;
public string WeaponID;
public int weaponMagSize;
public WeaponProperties(string WeaponID,
int WeaponDamage,
int WeaponMaxAmmo,
int WeaponMagSize,
float WeaponReloadTime,
float WeaponCadence,
float WeaponLenght)
{
weaponDamage = WeaponDamage;
weaponMaxAmmo = WeaponMaxAmmo;
weaponReloadTime = WeaponReloadTime;
weaponCadence = WeaponCadence;
weaponLenght = WeaponLenght;
weaponMagSize = WeaponMagSize;
weaponID = WeaponID;
}
};
public WeaponProperties pitola = new WeaponProperties(WeaponID: "Pitola",
WeaponDamage: 1, WeaponMaxAmmo: 24, WeaponMagSize: 6, WeaponReloadTime: 3,WeaponCadence: 0.6f, WeaponLenght: 0.1f);
public WeaponProperties rifle = new WeaponProperties(WeaponID: "Rifle",
WeaponDamage: 3, WeaponMaxAmmo: 24, WeaponMagSize: 10, WeaponReloadTime: 3,
WeaponCadence: 1.0f, WeaponLenght: 0.1f);
Подробнее здесь: https://stackoverflow.com/questions/799 ... -inspector