46 lines
1.2 KiB
C#
46 lines
1.2 KiB
C#
using FishNet.Object;
|
|
using UnityEngine;
|
|
|
|
namespace _PROJECT.Scripts.Bow
|
|
{
|
|
public class StartTarget : NetworkBehaviour, IArrowHittable
|
|
{
|
|
public ArcheryRange archeryRange;
|
|
public Canvas textCanvas;
|
|
private MeshRenderer _meshRenderer;
|
|
private BoxCollider _boxCollider;
|
|
|
|
// Start is called before the first frame update
|
|
void Start()
|
|
{
|
|
_meshRenderer = GetComponent<MeshRenderer>();
|
|
_boxCollider = GetComponent<BoxCollider>();
|
|
}
|
|
|
|
[ObserversRpc]
|
|
private void HideTarget()
|
|
{
|
|
_meshRenderer.enabled = false;
|
|
_boxCollider.enabled = false;
|
|
textCanvas.enabled = false;
|
|
}
|
|
|
|
[ObserversRpc]
|
|
public void ShowTarget()
|
|
{
|
|
_meshRenderer.enabled = true;
|
|
_boxCollider.enabled = true;
|
|
textCanvas.enabled = true;
|
|
}
|
|
|
|
public void Hit(Arrow arrow)
|
|
{
|
|
if (!IsServer) return;
|
|
if (arrow == null) return;
|
|
|
|
Despawn(arrow.gameObject, DespawnType.Pool);
|
|
HideTarget();
|
|
archeryRange.StartRound();
|
|
}
|
|
}
|
|
} |