mirror of
https://github.com/misternebula/quantum-space-buddies.git
synced 2025-01-10 15:53:19 +00:00
28 lines
812 B
C#
28 lines
812 B
C#
using QSB.ItemSync.WorldObjects.Items;
|
|
using QSB.WorldSync;
|
|
|
|
namespace QSB.ItemSync.WorldObjects.Sockets
|
|
{
|
|
internal class QSBOWItemSocket<T> : WorldObject<T>, IQSBOWItemSocket
|
|
where T : OWItemSocket
|
|
{
|
|
public override void Init(T attachedObject, int id) { }
|
|
|
|
public virtual bool AcceptsItem(IQSBOWItem item)
|
|
{
|
|
var itemType = item.GetItemType();
|
|
var acceptableType = AttachedObject._acceptableType;
|
|
return (itemType & acceptableType) == itemType;
|
|
}
|
|
|
|
public virtual bool IsSocketOccupied()
|
|
=> AttachedObject.IsSocketOccupied();
|
|
|
|
public virtual bool PlaceIntoSocket(IQSBOWItem item)
|
|
=> AttachedObject.PlaceIntoSocket((OWItem)(item as IWorldObject).ReturnObject());
|
|
|
|
public virtual IQSBOWItem RemoveFromSocket()
|
|
=> ItemManager.GetObject(AttachedObject.RemoveFromSocket());
|
|
}
|
|
}
|