Files

52 lines
1.4 KiB
C#

using System;
using Drawing;
using Unity.Netcode;
using UnityEngine;
namespace Reset.Items{
public class ItemDrop : NetworkBehaviour, IInteractable{
public Item item;
// Start is called once before the first execution of Update after the MonoBehaviour is created
void Start(){
if (NetworkManager.Singleton.IsHost || NetworkManager.Singleton.IsConnectedClient) {
GetComponent<NetworkObject>().Spawn();
}
}
// Update is called once per frame
void Update(){
}
public void Interact(){
if (NetworkManager.Singleton.IsHost || NetworkManager.Singleton.IsConnectedClient) {
Debug.Log("RPC Sent");
DestroyOnOwnerRpc();
} else {
Debug.Log("Destroyed");
Destroy(gameObject);
}
}
public bool CanInteract(){
throw new NotImplementedException();
}
public void CancelInteract(){
throw new NotImplementedException();
}
[Rpc(SendTo.Owner)]
public void DestroyOnOwnerRpc(){
Destroy(gameObject);
}
public void OnObserverDetected(EnvironmentObserver observer){
Draw.ingame.Label2D(transform.position + Vector3.up * 2f, item.itemName, 24);
item.DrawItemInfo(transform.position);
}
}
}