Files
ihob/Assets/ProCamera2D/Editor/Extensions/ProCamera2DSpeedBasedZoomEditor.cs

45 lines
1.8 KiB
C#
Raw Permalink Normal View History

2026-02-21 17:04:05 -08:00
using UnityEditor;
using UnityEngine;
namespace Com.LuisPedroFonseca.ProCamera2D
{
[CustomEditor(typeof(ProCamera2DSpeedBasedZoom))]
public class ProCamera2DSpeedBasedZoomEditor : Editor
{
public override void OnInspectorGUI()
{
if (target == null)
return;
var proCamera2DSpeedBasedZoom = (ProCamera2DSpeedBasedZoom)target;
if(proCamera2DSpeedBasedZoom.ProCamera2D == null)
EditorGUILayout.HelpBox("ProCamera2D is not set.", MessageType.Error, true);
DrawDefaultInspector();
if (proCamera2DSpeedBasedZoom.MaxZoomInAmount < 1f)
proCamera2DSpeedBasedZoom.MaxZoomInAmount = 1f;
if (proCamera2DSpeedBasedZoom.MaxZoomOutAmount < 1f)
proCamera2DSpeedBasedZoom.MaxZoomOutAmount = 1f;
if (proCamera2DSpeedBasedZoom.CamVelocityForZoomOut <= proCamera2DSpeedBasedZoom.CamVelocityForZoomIn)
proCamera2DSpeedBasedZoom.CamVelocityForZoomOut = proCamera2DSpeedBasedZoom.CamVelocityForZoomIn + .1f;
if (proCamera2DSpeedBasedZoom.CamVelocityForZoomIn >= proCamera2DSpeedBasedZoom.CamVelocityForZoomOut)
proCamera2DSpeedBasedZoom.CamVelocityForZoomIn = proCamera2DSpeedBasedZoom.CamVelocityForZoomOut - .1f;
if (proCamera2DSpeedBasedZoom.CamVelocityForZoomIn < .5f)
proCamera2DSpeedBasedZoom.CamVelocityForZoomIn = .5f;
EditorGUILayout.Space();
GUI.enabled = false;
EditorGUILayout.BeginHorizontal();
GUILayout.Label("Current Velocity (approx.)");
GUILayout.Label(proCamera2DSpeedBasedZoom.CurrentVelocity.ToString());
EditorGUILayout.EndHorizontal();
GUI.enabled = true;
}
}
}