using System; using UnityEngine; using UnityEditor; [CustomEditor(typeof (CameraRockTest))] public class CameraRockEditor : Editor { // Use this for initialization private void Start() { } // Update is called once per frame private void Update() { } private CameraRockTest _rockTest; private string PosXId = "-1"; private string PosYId = "-1"; private string PosZId = "-1"; private string RXId = "-1"; private string RYId = "-1"; private string RZId = "-1"; private void OnEnable() { _rockTest = (CameraRockTest) target; } public override void OnInspectorGUI() { base.OnInspectorGUI(); GUILayout.BeginVertical(); if (GUILayout.Button("保存数据", GUILayout.Width(100), GUILayout.Height(30))) { _rockTest.WriteCurveValue(); PosXId = _rockTest.PosxIndex.ToString(); PosYId = _rockTest.PosYIndex.ToString(); PosZId = _rockTest.PosZIndex.ToString(); RXId = _rockTest.RXIndex.ToString(); RYId = _rockTest.RYIndex.ToString(); RZId = _rockTest.RZIndex.ToString(); } GUILayout.Space(10); if (GUILayout.Button("开始震屏", GUILayout.Width(100), GUILayout.Height(30))) { _rockTest.Play(); } GUILayout.Space(50); GUILayout.BeginHorizontal(); GUILayout.Label("XRockOff的曲线ID:"); PosXId = GUILayout.TextField(PosXId, GUILayout.Width(100), GUILayout.Height(20)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("YRockOff的曲线ID:"); PosYId = GUILayout.TextField(PosYId, GUILayout.Width(100), GUILayout.Height(20)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("ZRockOff的曲线ID:"); PosZId = GUILayout.TextField(PosZId, GUILayout.Width(100), GUILayout.Height(20)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("RX RockOff的曲线ID:"); RXId = GUILayout.TextField(RXId, GUILayout.Width(100), GUILayout.Height(20)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("RY RockOff的曲线ID:"); RYId = GUILayout.TextField(RYId, GUILayout.Width(100), GUILayout.Height(20)); GUILayout.EndHorizontal(); GUILayout.BeginHorizontal(); GUILayout.Label("RZ RockOff的曲线ID:"); RZId = GUILayout.TextField(RZId, GUILayout.Width(100), GUILayout.Height(20)); GUILayout.EndHorizontal(); if (GUILayout.Button("读取数据", GUILayout.Width(100), GUILayout.Height(30))) { _rockTest.SetRockXCurve(_rockTest.InitRockOff(Convert.ToInt32(PosXId))); _rockTest.SetRockYCurve(_rockTest.InitRockOff(Convert.ToInt32(PosYId))); _rockTest.SetRockZCurve(_rockTest.InitRockOff(Convert.ToInt32(PosZId))); _rockTest.SetRockRXCurve(_rockTest.InitRockOff(Convert.ToInt32(RXId))); _rockTest.SetRockRYCurve(_rockTest.InitRockOff(Convert.ToInt32(RYId))); _rockTest.SetRockRZCurve(_rockTest.InitRockOff(Convert.ToInt32(RZId))); } GUILayout.EndVertical(); } }