Cleaned up and commented version.
This commit is contained in:
@@ -5,12 +5,12 @@ using Unity.Cinemachine;
|
||||
public class OrbitCameraMouseControl : MonoBehaviour
|
||||
{
|
||||
[Header("Input Actions")]
|
||||
public InputActionReference aimAction; // CM Default / Aim
|
||||
public InputActionReference aimAction; // erlaubt die Zuweisung einer Unity Input System Action. Der Name AimAction kommt von der Belegung auf der rechten Maustaste.
|
||||
|
||||
[Header("Cinemachine Components")]
|
||||
public CinemachineInputAxisController inputAxisController;
|
||||
public CinemachineInputAxisController inputAxisController; // hier wird der InputAxisController der Cinemachine Camera verlinkt, der manipuliert werden soll.
|
||||
|
||||
private bool aimingBlocked = false;
|
||||
private bool aimingBlocked = false; // wird verwendet, um die Bewegung der Kamera zu verhindern, während die Maus über einem Menüelement hovert.
|
||||
|
||||
private void OnEnable()
|
||||
{
|
||||
@@ -30,13 +30,13 @@ public class OrbitCameraMouseControl : MonoBehaviour
|
||||
|
||||
if (inputAxisController != null) // aimingBlocked wird durch hover States der Menü-Elemente gesetzt
|
||||
{
|
||||
inputAxisController.Controllers[0].Enabled = isAiming;
|
||||
inputAxisController.Controllers[0].Enabled = isAiming; // Die X und Y-Achse der der Orbit-Funktion werden freigeschaltet, solange die aimAction (hier RMT) gedrückt ist.
|
||||
inputAxisController.Controllers[1].Enabled = isAiming;
|
||||
inputAxisController.Controllers[2].Enabled = !aimingBlocked;
|
||||
inputAxisController.Controllers[2].Enabled = !aimingBlocked; // Die Scroll-Funktion ist freigeschaltet, solange die Maus nicht über einem Menüelement hovert.
|
||||
}
|
||||
}
|
||||
|
||||
public void SetBlocker(bool value)
|
||||
public void SetBlocker(bool value) // mit dieser Funktion kann der Blocker durch andere Skripte gesetzt werden.
|
||||
{
|
||||
aimingBlocked = value;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user