2022-01-26 00:41:39 -08:00
|
|
|
|
using QSB.WorldSync;
|
|
|
|
|
using UnityEngine;
|
|
|
|
|
|
2022-03-02 19:46:33 -08:00
|
|
|
|
namespace QSB.ItemSync.WorldObjects.Items;
|
|
|
|
|
|
|
|
|
|
public interface IQSBItem : IWorldObject
|
2022-01-26 00:41:39 -08:00
|
|
|
|
{
|
2022-07-25 13:09:51 +01:00
|
|
|
|
ItemState ItemState { get; }
|
|
|
|
|
|
2022-03-02 19:46:33 -08:00
|
|
|
|
ItemType GetItemType();
|
|
|
|
|
void PickUpItem(Transform itemSocket);
|
2022-04-01 19:08:03 +01:00
|
|
|
|
void DropItem(Vector3 position, Vector3 normal, Transform parent, Sector sector, IItemDropTarget customDropTarget);
|
2022-03-02 19:46:33 -08:00
|
|
|
|
void OnCompleteUnsocket();
|
2022-03-24 09:49:22 -07:00
|
|
|
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
/// store the last location when a remote player picks up/unsockets an item
|
|
|
|
|
/// so we can drop/socket it if they leave while still holding it
|
|
|
|
|
/// </summary>
|
|
|
|
|
void StoreLocation();
|
2022-02-24 22:04:54 -08:00
|
|
|
|
}
|