using UnityEngine; [System.Serializable] public class EquippableItemPrefabAssetData : PrefabAssetModelData { public EquippableItemData EquippableItemData; public EquippableItemPrefabAssetData(EquippableItemPrefabAsset assetModel) : base(assetModel) { EquippableItemData = MapModelToData(assetModel.EquippableItem); } /// /// Function to convert equitable item (current object partial variable) object to data format /// /// /// public EquippableItemData MapModelToData(EquippableItem equippableItem) { return new EquippableItemData(equippableItem); } /// /// Function to convert EquippableItem Asset format to data format /// /// /// public override PrefabAssetModelData PrefabAssetModelToData(PrefabAssetModel assetModel) { return new EquippableItemPrefabAssetData((EquippableItemPrefabAsset)assetModel); } public override PrefabAssetModel MapDataToPrefabAssetModel() { EquippableItemPrefabAsset equippableItemPrefabAsset = new EquippableItemPrefabAsset( Name, PrefabAssetName, new Vector3(Position[0], Position[1], Position[2]) ); equippableItemPrefabAsset.EquippableItem = new EquippableItem( EquippableItemData.MapDataToObject(equippableItemPrefabAsset.PrefabAssetName) ); return equippableItemPrefabAsset; } }