30 lines
822 B
C#
30 lines
822 B
C#
using UnityEngine;
|
|
using System.Collections.Generic;
|
|
|
|
[CreateAssetMenu(fileName = "PickupItemData", menuName = "Game/Pickup Item Data")]
|
|
public class PickupItemData : ScriptableObject
|
|
{
|
|
public string itemName;
|
|
[TextArea]
|
|
public string description;
|
|
public Sprite mapSprite;
|
|
|
|
public static bool AreEquivalent(PickupItemData a, PickupItemData b)
|
|
{
|
|
if (ReferenceEquals(a, b)) return true;
|
|
if (a is null || b is null) return false;
|
|
// Compare by itemName as a fallback
|
|
return a.itemName == b.itemName;
|
|
}
|
|
|
|
public static bool ListContainsEquivalent(List<PickupItemData> list, PickupItemData item)
|
|
{
|
|
foreach (var entry in list)
|
|
{
|
|
if (AreEquivalent(entry, item))
|
|
return true;
|
|
}
|
|
return false;
|
|
}
|
|
}
|