using UnityEditor; using UnityEngine; using Minigames.TrashMaze.Objects; namespace Editor { /// /// Custom editor for TrashMazeSwitchToTrafalgar showing maze-specific settings /// [CustomEditor(typeof(TrashMazeSwitchToTrafalgar))] public class TrashMazeSwitchToTrafalgarEditor : ControllerSwitchItemEditor { private SerializedProperty _targetCameraState; protected override void OnEnable() { base.OnEnable(); _targetCameraState = serializedObject.FindProperty("targetCameraState"); } protected override void DrawCustomFields() { EditorGUILayout.Space(); // Trash Maze Specific Settings EditorGUILayout.LabelField("Trash Maze - To Trafalgar Settings", EditorStyles.boldLabel); EditorGUILayout.PropertyField(_targetCameraState); EditorGUILayout.HelpBox("Camera state to blend to. Typically 'Gameplay' when exiting the maze. Requires TrashMazeCameraController in scene.", MessageType.Info); EditorGUILayout.Space(); // Info box about the behavior EditorGUILayout.HelpBox( "Switch Behavior:\n" + "1. Deactivate PulverController (stops input)\n" + "2. Start camera blend to Gameplay view\n" + "3. Wait for blend to complete\n" + "4. Clear Pulver from maze camera tracking\n" + "5. Set Trafalgar as tracking target for gameplay camera\n" + "6. Activate Pulver's follower mode (follows Trafalgar)\n" + "7. Activate PlayerTouchController (Trafalgar)\n" + "8. Switch input to 'trafalgar'", MessageType.None ); } } }