An advanced cursor behavior using state precedence.
- Place prefab Prefabs/CursorHandler.prefab to your in your scene
- (optional) Change some prefab options using Inspector window
- Use
CursorHandler.Instance.SetCursorPriority(CursorMode <mode>, int <priority>);
to set the priority andCursorHandler.Instance.RemoveCursorPriority(int <priority>);
to delete a priority. AllCursorMode
's:HiddenLocked
(cursor locked and centered at game window),Normal
(free and visible cursor),HiddenFree
(cursor is hidden but not locked)
Hide cursor:
CursorHandler.Instance.SetCursorPriority(CursorHandler.CursorIconMode.HiddenLocked, 10);
To show cursor when it's already hidden by priority 10:
CursorHandler.Instance.SetCursorPriority(CursorHandler.CursorIconMode.Normal, 20);
Remove hiding on priority 10
CursorHandler.Instance.RemoveCursorPriority(10);