using System.Collections; using System.Collections.Generic; using UnityEngine; namespace AibisDream { public class AirDashboard : Dashboard { private Transform _pointer; private Transform _minPointer; private Transform _maxPointer; [SerializeField] private float topPosY; [SerializeField] private float bottomPosY; protected override void OnStart() { _pointer = transform.Find("Pointer"); _maxPointer = transform.Find("Max Pointer"); _minPointer = transform.Find("Min Pointer"); } protected override void UpdateDashboard(EngineData data) { // 气门 var targetPosY = (topPosY - bottomPosY) * data.curAir + bottomPosY; _pointer.position = new Vector3(_pointer.position.x, targetPosY, _pointer.position.z); // 气门上下限 var minPosY = (topPosY - bottomPosY) * data.curAirMin + bottomPosY; var maxPosY = (topPosY - bottomPosY) * data.curAirMax + bottomPosY; _minPointer.position = new Vector3(_minPointer.position.x, minPosY, _minPointer.position.z); _maxPointer.position = new Vector3(_maxPointer.position.x, maxPosY, _maxPointer.position.z); } } }