Files
Dontback/Assets/Scripts/Camera/CameraInteract.cs
Eicy c9d29f2a68 AI补足注释(已经快看不懂了)
实现i18n
优化部分模块的逻辑以优化性能
修复物品展示框打开时按下ESC唤出暂停菜单但没有暂停的bug

Signed-off-by: Eicy <im@crash.work>
2024-10-14 21:37:04 +08:00

32 lines
1.0 KiB
C#

using Event;
using Keyboard;
using UnityEngine;
namespace Camera
{
// 处理摄像机与可交互物体的交互
public class CameraInterAct : MonoBehaviour
{
[Header("Interaction Settings")]
[SerializeField] private int maxInterActDistance = 10; // 最大交互距离
private void Update()
{
// 执行射线检测
if (!Physics.Raycast(transform.position, transform.forward, out var raycastHit,
maxInterActDistance)) return;
// 检测到碰撞体并按下交互键
if (Input.GetKeyDown(KeySettingManager.Instance.GetKey("InterAct")))
{
EventManager.Instance.OnCameraInterAct(raycastHit.collider.gameObject);
}
}
private void OnDrawGizmos()
{
// 在场景视图中绘制射线,便于调试
Gizmos.color = Color.green;
Gizmos.DrawLine(transform.position, transform.position + transform.forward * maxInterActDistance);
}
}
}