データベースにScriptableObjectを使うのは別におかしくはないしそれでいい
ScriptableObject(アイテムのデータ)と回数の2つの変数を持ったクラスを作ってプレイヤーにはそれを持たせるといい
[System.serializable]
public class Item{
public ItemData data;//ScriptableObject
public int count;
}
こんな感じ
プレイヤーにはこれのListを持たせる
セーブの方式によってはやや面倒になるけど、jsonで保存するならScriptableObjectはIDで保存されてそのまま使えるからあまり気にしなくていい