unityzgy/Assets/Scripts/ThisProjectTool/VRCtrl/SanReQiCtrl.cs
ayuan9957 bf12e02276 feat: 多语言本地化系统 - 支持中/英/法/俄实时切换
- LocalizationManager: 新增翻译表(SetFormatted/SetDuration/LocalizeOperateMsg)
- LoginPanel: InputField placeholder本地化、字体颜色保持
- HistoryPanel: 用时数据本地化、placeholder本地化
- RecordDetailPanel: 操作详情消息本地化(LanguageChanged重建)
- AppraiseWindowBase: 评价等级本地化、操作消息重建
- EditorAppraiser: 所有评估消息改用InjectOperateMsgLocalized
- StudentOperateRecorder: 新增InjectOperateMsgLocalized方法
- LocalizationLanguageTestBar: 单例模式、ScreenSpaceOverlay筛选
- 字体切换时保留颜色和verticalOverflow
2026-07-16 10:05:59 +08:00

58 lines
1.6 KiB
C#

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
//散热器交互逻辑处理类
public class SanReQiCtrl : FixedAbs
{
HingeJoint hingeJoint_this;
JointLimits defultLimits;
// Start is called before the first frame update
void Start()
{
hingeJoint_this = this.GetComponent<HingeJoint>();
defultLimits = hingeJoint_this.limits;//记录初始限制
}
public override void Grabbed()
{
}
public override void UnGrabbed()
{
}
//散热器锁紧装置是支撑杆 存在两个锁紧位置
public override void FixatorChanged(IFixator fixator, FixatorStateEnum fixatorState)
{
JointLimits targetLimits = hingeJoint_this.limits;
if (fixatorState == FixatorStateEnum.Locking)//锁紧时铰链限制当前角度
{
targetLimits.max = this.transform.localEulerAngles.x;
targetLimits.min = this.transform.localEulerAngles.x;
if (this.transform.localEulerAngles.x <= 3)//趋于平行
{
Debug.Log("散热器固定在关闭位置了");
Locking();
}
else if (this.transform.localEulerAngles.x >= 40)//打开到一定角度
{
Debug.Log("散热器固定在打开位置了");
UnLocking();
}
else
{
Debug.Log("散热器固定位置异常");
}
}
else
{
targetLimits = defultLimits;
}
hingeJoint_this.limits = targetLimits;
}
}