SSLR/SSLR/Assets/Scripts/PenInteractor.cs
2025-02-18 06:15:07 +08:00

52 lines
1.6 KiB
C#

/*
* Author: Shannon Goh and Livinia Poo
* Date: 03/02/2025
* Description:
* Pen Interactor Handle script
*/
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.XR.Interaction.Toolkit;
using UnityEngine.XR.Interaction.Toolkit.Interactors;
public class PenInteractor : MonoBehaviour
{
/// <summary>
/// Document script reference
/// </summary>
private StampDocument stampDocScript;
/// <summary>
/// Sign when pen touches area
/// </summary>
/// <param name="collision"></param>
private void OnCollisionEnter(Collision collision)
{
if (PenSocketInteractor.isPickedUp && collision.gameObject.CompareTag("Paper"))
{
if (collision.collider.gameObject.name == "Stamp-Sign Area")
{
stampDocScript = collision.gameObject.GetComponent<StampDocument>();
if(stampDocScript != null)
{
PlayerDialogueInteraction.instance.currentDocument = stampDocScript.gameObject;
if(!stampDocScript.isSigned)
{
AudioManager.instance.PlaySFX(AudioManager.instance.pen);
PlayerDialogueInteraction.instance.servicesPanel.SetActive(true);
PlayerDialogueInteraction.instance.questionPanel.SetActive(false);
}
}
else
{
Debug.LogError("Paper doesn't have StampDocScript");
}
}
}
}
}